当前位置:   article > 正文

WPF —— ListBox控件、GroupBox控件详解

WPF —— ListBox控件、GroupBox控件详解

1、ListBox 介绍

    ListBox 是一个 ItemsControl,这意味着它可以包含任何类型的对象的集合 (,例如字符串、图像或面板) 。

    一个 ListBox 中的多个项是可见的,与仅 ComboBox具有所选项可见的项不同,除非 IsDropDownOpen 属性为 true。 该 SelectionMode 属性确定一次是否可以选择多个项 ListBox 。

2 常用的属性

ItemTemplate 子项模版标签
DataTemplate 子项里面数据的模版

3 ListBox的实例

动态绑定数据:使用cs代码添加子选项.必须添加ItemsSource="{Binding}"语法
静态绑定数据:直接使用标签添加子选项

  1. <StackPanel Orientation="Horizontal" VerticalAlignment="Top">
  2. <ListBox Width="200"
  3. Height="400"
  4. Background="Pink"
  5. ItemsSource="{Binding}"
  6. Name="l2">
  7. <!--演示静态绑定数据-->
  8. <ListBoxItem>
  9. <Button>武庚纪</Button>
  10. </ListBoxItem>
  11. <ListBoxItem>斗罗大陆</ListBoxItem>
  12. <ListBoxItem>星辰变</ListBoxItem>
  13. </ListBox>
  14. <!--演示的是动态绑定数据 ItemsSource="{Binding}"-->
  15. <!--演示自定义模版子项-->
  16. <ListBox Width="200"
  17. Height="400"
  18. Name="l1"
  19. FontSize="20"
  20. SelectionMode="Extended"
  21. ItemsSource="{Binding}"
  22. Margin="100,0,0,0"
  23. Background="Teal">
  24. <!--ItemTemplate 子项模版标签-->
  25. <!--DataTemplate 子项里面数据的模版-->
  26. <ListBox.ItemTemplate>
  27. <DataTemplate>
  28. <Button Content="{Binding}" Background="red"></Button>
  29. </DataTemplate>
  30. </ListBox.ItemTemplate>
  31. </ListBox>
  32. <!--演示绑定数据是对象结构-->
  33. <ListBox Name="l3" Width="200" Margin="100,0,0,0" Background="Beige"
  34. ItemsSource="{Binding}">
  35. </ListBox>
  36. </StackPanel>

 

  1. private void Window_Loaded(object sender, RoutedEventArgs e)
  2. {
  3. List<string> list = new List<string>();
  4. list.Add("张三");
  5. list.Add("李四");
  6. list.Add("王五");
  7. list.Add("马六");
  8. this.l1.DataContext = list;
  9. List<DaJia> list2 = new List<DaJia>();
  10. list2.Add(new DaJia() {
  11. Name = "淀粉肠",
  12. Description = "是骨头捣碎泥"
  13. });
  14. list2.Add(new DaJia()
  15. {
  16. Name = "梅菜扣肉",
  17. Description = "淋巴结肉"
  18. });
  19. this.l3.DataContext = list2;
  20. this.l3.DisplayMemberPath = "Description"; //指定显示属性的路径
  21. }
  22. }
  23. public class DaJia {
  24. public string Name { get; set; } // 打假名称
  25. public string Description { get; set; } // 打假描述
  26. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/291186
推荐阅读
相关标签
  

闽ICP备14008679号