如何在列表框c#中提交额外值?
我有个问题,我找不到答案。首先,我是一个编程高手,所以欢迎所有有建设性的反馈 我们正在用c语言编写一个程序。在列表框中,我放置了对象(矩形)。这些矩形的参数(嗯,只有颜色,因为高度和宽度是固定的)保存到数据库中。但是我想给列表框中的每个对象一个额外的值(确切地说,我想给数据库中对象的id)。因此,稍后,我可以在列表框中获取所选项目的ID。这可能吗如何在列表框c#中提交额外值?,c#,wpf,xaml,listbox,C#,Wpf,Xaml,Listbox,我有个问题,我找不到答案。首先,我是一个编程高手,所以欢迎所有有建设性的反馈 我们正在用c语言编写一个程序。在列表框中,我放置了对象(矩形)。这些矩形的参数(嗯,只有颜色,因为高度和宽度是固定的)保存到数据库中。但是我想给列表框中的每个对象一个额外的值(确切地说,我想给数据库中对象的id)。因此,稍后,我可以在列表框中获取所选项目的ID。这可能吗 //########## TOEVOEGEN VAN KLEUR AAN LISTBOX MET KLEURTJES + INITIALISATIE
//########## TOEVOEGEN VAN KLEUR AAN LISTBOX MET KLEURTJES + INITIALISATIE
var queryKLeurenInDatabase = (from kleurtjes in dbo.tblKleurs
select kleurtjes);
foreach (var item in queryKLeurenInDatabase)
{
int red, green, blue,ID;
Rectangle kleurBox = new Rectangle();
kleurBox.Height = 18;
kleurBox.Width = 160;
red = item.Red.Value;
green = item.Green.Value;
blue = item.Blue.Value;
ID = item.KleurID;
kleurBox.Fill = new SolidColorBrush(new Color() { R = Convert.ToByte(red), G = Convert.ToByte(green), B = Convert.ToByte(blue), A = 255 });
ListItem dataItem = new ListItem();
dataItem.Tag = ID;
listBoxOpgeslagenKleuren.Items.Add(kleurBox);
//ListItem dataItem = new ListItem();
//dataItem.Text = "value to show";
//dataItem.Value = *another value you want *;
//listBox.Items.Add(dataItem);
}
正如评论员所指出的,解决方案是创建自己的类,如下所示:
public class DataItem {
public Rectangle Rect { get; set; }
public string ID { get; set; }
}
然后您可以创建一个
列表绑定
并将其绑定到您的列表框创建一个数据类并指定列表框项目,如ID、名称、描述等,并将数据绑定到数据库非常感谢您,也感谢您在我的第一篇文章中所做的编辑。很好,很好。继续编码:)