WPF提供了许多包装集合的控件。这里包括了ListBox列表控件、ComboBox组合框控件,还有其他的更多的空间我们就不介绍了。
1、ListBox
ListBox就是包含了列表的一个控件,我们用WPF程序来说明如何使用。
ListBox主要通过ListItem这个属性来创建元素,可以包括文本,图片和按钮等等其他控件,也可以包括一些布局面板。
我们可以通过ListBox的SelectedIndex和SelectedItem属性访问选中对象的下标和选中的对象,我们创建三个复选框为例说明。
private void listBox1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (listBox1.SelectedItem == null) return;
this.textSelection.Text = "选择的选项为:" + (listBox1.SelectedIndex+1) + "\r\n"
+ "选中状态为:" + ((CheckBox)listBox1.SelectedItem).IsChecked;
}
private void Button_Click(object sender, RoutedEventArgs e)
{
StringBuilder sb = new StringBuilder();
foreach (CheckBox item in listBox1.Items)
{
if (item.IsChecked == true)
{
sb.Append(item.Content);
sb.Append("被选中\r\n");
}
textSelection.Text = sb.ToString();
}
}
当我们选中某个选项时,可以显示其选中的下标和内容,也可以通过访问选中的元素来看当前的复选框是否被选中的状态。
还可以添加按钮的响应事件,直接访问列表控件里面所有的元素,直接看是否被选中,并把结果输出:
2、ComboBox
ComboBox和ListBox类似,是通过ComboItem来对元素进行赋值。
ComboBox同样也可以嵌套多种其他的控件,包括按钮,文本和图片等等。
ComboBox和ListBox的区别在于,ComboBox是通过下拉框来选择元素,但是ListBox是都呈现出来了的,这里我们就不举例说明了。