【发布时间】:2010-04-09 23:53:32
【问题描述】:
我创建了两个 RadioButton(重量和高度)。我会在这两个类别之间切换。但它们共享相同的 ListBox 控制器(listBox1 和 listBox2)。
有没有什么好方法可以更简单地清除所有 ListBox 项?我没有找到 ListBox 的 removeAll()。我不喜欢我在这里发布的复杂的多线样式。
private void Weight_Click(object sender, RoutedEventArgs e)
{
// switch between the radioButton "Weith" and "Height"
// Clear all the items first
listBox1.Items.Remove("foot");
listBox1.Items.Remove("inch");
listBox1.Items.Remove("meter");
listBox2.Items.Remove("foot");
listBox2.Items.Remove("inch");
listBox2.Items.Remove("meter");
// Add source units items for listBox1
listBox1.Items.Add("kilogram");
listBox1.Items.Add("pound");
// Add target units items for listBox2
listBox2.Items.Add("kilogram");
listBox2.Items.Add("pound");
}
private void Height_Click(object sender, RoutedEventArgs e)
{
// switch between the radioButton "Weith" and "Height"
// Clear all the items first
listBox1.Items.Remove("kilogram");
listBox1.Items.Remove("pound");
listBox2.Items.Remove("kilogram");
listBox2.Items.Remove("pound");
// Add source units items for listBox1
listBox1.Items.Add("foot");
listBox1.Items.Add("inch");
listBox1.Items.Add("meter");
// Add target units items for listBox2
listBox2.Items.Add("foot");
listBox2.Items.Add("inch");
listBox2.Items.Add("meter");
}
【问题讨论】:
-
我非常喜欢 Matt Dearing 的回答。对于这种特定用途,它看起来像是更好的编程技术,而不仅仅是使用 Items.Clear() 方法。