在C#中向ListBox添加一个ListBoxItem?

21

我知道:

String test = "test";
ListBox.Items.Add(test);
或者
String test = "test";
int index = 1;
ListBox.Items.Insert(index, String);

如何把一个字符串添加到ListBox中,但是我想要插入一个ListBoxItem,该怎么做? 之前我学到:

var contentToString = (String)ListBoxItem.Content;

简单地将ListBoxItem转换为String,但我无法做到相反地将String转换为ListBoxItem


这是ASP.NET还是WinForms? - Danilo Vulović
@DaniloVulović:ASP.NET的ListBox没有内容属性。 - Tim Schmelter
WinForms中没有ListBoxItem! - Danilo Vulović
1
具体来说,我正在编写一个Windows 8 Metro应用程序。我使用C#和XAML。 - Hendra Anggrian
3个回答

38

试试这个:

ListBoxItem itm = new ListBoxItem();
itm.Content = "some text";

listbox.Items.Add(itm);

listbox是ListBox的名称。


1

您的对象将始终位于 ListBoxItem 中,如果您没有显式添加它,ListBox 将为您生成一个。要获取 ListBoxItem,您可以使用以下代码:

var listboxitem = (ListBoxItem)listbox.ItemContainerGenerator.ContainerFromItem(myItem);

1

你可以这样做

ListBox1.Items.Insert(0,new ListItem("ITEM 1", "Value"))

无法工作,在使用C#和XAML的Windows 8 Metro应用程序中没有ListItem。 - Hendra Anggrian

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接