建议wpf中不要像winform一样使用add的方法,这样动态操作对于获取单独元素的属性不是很方便。 wpf中如果要动态给ListBox动态添加items,应该动态创建ListBoxItem添加。 以下代码如果改为用add方法添加,则不能将对应的items转换为ListBoxItem类型从而无法获取ListBoxItem类型的属性。 ListBoxItem[] items = new ListBoxItem[]{ new ListBoxItem(){Content="测试0"}, new ListBoxItem(){Content="测试1"} }; foreach (var item in items) listbox1.Items.Add(item); listbox1.Items.Add("测试2"); ListBoxItem i = listbox1.Items[0] as ListBoxItem; MessageBox.Show(i.Content.ToString());
m_listbox.Items.Add("a");
m_listbox.Items.Add("b");
m_listbox.Items.Add("c");
m_listbox.Items.Add("d");
m_listbox.Items.Add("e");
private void button2_Click(object sender, RoutedEventArgs e)
{
for (int i = this.listBox1.SelectedItems.Count - 1; i >= 0; i--)
{
this.m_listbox.Items.Add(this.listBox1.SelectedItems[i].ToString());
this.listBox1.Items.Remove(this.listBox1.SelectedItem);
}
} private void button1_Click(object sender, RoutedEventArgs e)
{
this.m_listbox.Items.Insert(0, "aa");
}
}
建议wpf中不要像winform一样使用add的方法,这样动态操作对于获取单独元素的属性不是很方便。
wpf中如果要动态给ListBox动态添加items,应该动态创建ListBoxItem添加。
以下代码如果改为用add方法添加,则不能将对应的items转换为ListBoxItem类型从而无法获取ListBoxItem类型的属性。 ListBoxItem[] items = new ListBoxItem[]{
new ListBoxItem(){Content="测试0"},
new ListBoxItem(){Content="测试1"}
};
foreach (var item in items)
listbox1.Items.Add(item);
listbox1.Items.Add("测试2");
ListBoxItem i = listbox1.Items[0] as ListBoxItem;
MessageBox.Show(i.Content.ToString());