2021-08-14 WPF控件专题 ListBox控件详解

Posted 微软MVP Eleven

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-08-14 WPF控件专题 ListBox控件详解相关的知识,希望对你有一定的参考价值。

1.ListBox控件介绍

其中包含可选择的项的列表

手动添加项

绑定数据源

两个ListBox中的项相互移动,不太适合指定ItemsSource,Items.Add方式添加项,可以灵活的添加或移除

2.具体案例

<Grid>
    <ListBox Name="lbClasses" SelectionMode="Multiple" ItemsSource="{Binding}"  HorizontalAlignment="Left" Height="253" Margin="136,63,0,0" VerticalAlignment="Top" Width="263" SelectionChanged="LbClasses_SelectionChanged">
        <!--<ListBoxItem Content="软件班" IsSelected="True" ></ListBoxItem>
        <ListBoxItem Content="数据班" ></ListBoxItem>
        <ListBoxItem Content="英语班" ></ListBoxItem>-->
    </ListBox>
</Grid>
private void Window_Loaded(object sender, RoutedEventArgs e)
{
    //绑定数据源
    // lbClasses.ItemsSource = GetClassInfos();
    lbClasses.DataContext = GetClassInfos();
    lbClasses.DisplayMemberPath = "ClassName";
    lbClasses.SelectedValuePath = "ClassId";
    lbClasses.SelectedIndex = 0;

    //如果要动态添加、移除项,情况与ComboBox 
    //lbClasses.Items.Add(11);
    //lbClasses.Items.Add("aaaa");

}

private List<ClassInfo> GetClassInfos()
{
    List<ClassInfo> list = new List<ClassInfo>();
    list.AddRange(new ClassInfo[]
    {
         new ClassInfo()
        {
            ClassId=1,
            ClassName="计算机一班"
        },
         new ClassInfo()
        {
            ClassId=2,
            ClassName="计算机二班"
        },
         new ClassInfo()
        {
            ClassId=3,
            ClassName="商务英语一班"
        },
          new ClassInfo()
        {
            ClassId=3,
            ClassName="商务英语二班"
        }
    });
    return list;
}

private void LbClasses_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    //选择项类型  由绑定或添加时数据的类型决定
   // MessageBox.Show(lbClasses.SelectedItem.ToString());//字符串 int
    //实体类型
    ClassInfo selItem = lbClasses.SelectedItem as ClassInfo;

}

以上是关于2021-08-14 WPF控件专题 ListBox控件详解的主要内容,如果未能解决你的问题,请参考以下文章

2021-08-14 WPF控件专题 ProgressBar控件详解

2021-08-14 WPF控件专题 DatePicker 控件详解

2021-08-14 WPF控件专题 ListBox控件详解

2021-09-08 WPF上位机 03-扩展布局控件

WPF Listbox 控件模板不显示 Listboxitem 控件模板和 ItemTemplate 数据模板

2021-08-13 WPF控件专题 ComboBox 控件详解