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;

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值