1.ItemsControl是控件吗

ItemsControl可以在Panel中直接使用

<StackPanel>
    <ItemsControl Name="items">
    </ItemsControl>
</StackPanel>

直接设置ItemsSource也是可以显示的:

items.ItemsSource = new List<string> {"A","B","C" };

说明ItemsControl和普通的控件是相同的。

2.ItemsControl的控件的特性

ItemsControl是一个可以包含多个项目的控件,可以通过设定ItemsSource或者Items来指定ItemsControl的内容

ItemsSource:

ItemsSource可以是任何实现了IEnumerable的类型,比如说ArrayList,HashTable,Queue,List等等

Items:

可以使用Items.Add方法来手动添加ItemsControl子项,可支持各种类型,如:

items.Items.Add(DateTime.Now);
items.Items.Add("String");

Ellipse ellipse = new Ellipse();
ellipse.Width = 40;
ellipse.Height = 40;
ellipse.Fill = Brushes.Blue;

items.Items.Add(ellipse);

显示的结果如下图:

WPF控件--ItemsControl

关于ItemsSource和Items的关系:

设定了ItemsSource之后,Items属性将是只读的,且具有固定的大小

如果想恢复使用Items可以将ItemsSource设置为null,此时Items将是一个空的ItemCollection

3.哪些控件继承了ItemsControl

WPF控件--ItemsControl

如上图包含了以下控件:

Selector:Combox,ListBox,TabControl,MultiSelector

HeaderdItemsControl:MenuItem,ToolBar,TreeViewItem

MenuBase:ContextMenu,Menu

TreeView

StatusBar

DataGridCellsPresenter

DataGridColumnHeaderPresenter

 

WPF

相关文章:

  • 2021-05-31
  • 2021-09-25
  • 2022-12-23
  • 2019-05-20
  • 2021-11-01
  • 2022-12-23
  • 2021-09-10
猜你喜欢
  • 2021-05-16
  • 2022-02-13
  • 2022-01-26
  • 2022-12-23
  • 2021-12-29
相关资源
相似解决方案