从 ItemsControl 继承的控件包含一个对象集合。 ItemsControl 的一个示例是 ListBox。可以使用 ItemsSource 属性或 Items 属性来填充一个 ItemsControl。
1、使用ItemSource属性
使用ItemSource属性,需将其绑定到一个实现IEnumerable接口的类型的实例上,系统会枚举其成员做为ItemsControl的Item。如在一个ListBox中列出系统的所有字体,并在每一项中显示字体的样式(类似于Office系列中的字体下拉菜单):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using System.Windows.Markup;
namespace WpfApplication1
{
/// <summary>
/// 使用ItemSource属性,需将其绑定到一个实现IEnumerable接口的类型的实例上,
/// 系统会枚举其成员做为ItemsControl的Item。
/// 如在一个ListBox中列出系统的所有字体,
/// 并在每一项中显示字体的样式(类似于Office系列中的字体下拉菜单)。
/// </summary>
public partial class ItemsControl模型 : Window
{
public ItemsControl模型()
{
InitializeComponent();
// 设置绑定的数据源
Binding binding = new Binding();
binding.Source = Items;
// 绑定 第一个参数为依赖的属性,第二个为绑定值
lstFont.SetBinding(ListBox.ItemsSourceProperty, binding);
}
private List<TextBlock> Items
{
get {
List<TextBlock> result = new List<TextBlock>();
// 遍历系统的所有字体
foreach (FontFamily family in Fonts.SystemFontFamilies)
{
foreach (KeyValuePair<XmlLanguage, string> pair in family.FamilyNames)
{
TextBlock t = new TextBlock();
// 设置字体名称
t.Text = pair.Value;
// 设置字体样式
t.FontFamily = family;
t.FontSize = 12;
result.Add(t);
}
}
// 返回一个TextBlock的控件对象集合
return result;
}
}
}
}
分享到:
相关推荐
3. **ItemsControl模型**: - 使用`ItemSource`属性绑定数据集合。 - 使用`Items`属性添加或移除项目。 4. **HeaderedItemsControl模型**:结合了ItemsControl和HeaderedContentControl的功能,支持多个带有标题的...
- **ItemsControl模型**:表示一组数据项的集合。 - **HeaderedItemsControl模型**:带有标题的`ItemsControl`。 ### PanelDecoratorTextBlock内容模型 - **Panel内容模型**:用于布局控件的容器。 - **Decorator...
#### ItemsControl模型 - **列表内容**:用于显示多个项目。 - 使用 `ItemSource` 属性绑定数据源。 - 使用 `Items` 属性手动添加项目。 #### HeaderedItemsControl模型 - **带标题的列表内容**:支持带有标题的...
然后,在事件处理程序或代码中,可以通过数据上下文和标识符来访问对应的视图模型,进而操作对应的视图元素。 2. **ItemContainerGenerator**:`ItemsControl`提供了一个`ItemContainerGenerator`属性,它负责创建...
- **ItemsControl模型**: - **使用ItemSource属性**:绑定数据源,自动填充控件。 - **使用Items属性**:手动添加项目集合。 - **HeaderedItemsControl模型**:结合了`HeaderedContentControl`和`ItemsControl`的...
**ItemsControl模型** - ItemsControl 支持多个项目集合的展示,常用作列表或树形结构的容器。 - **ItemSource属性**:绑定数据源。 - **Items属性**:手动添加或移除项目。 #### 4. **HeaderedItemsControl...
在.NET框架中,尤其是WPF(Windows Presentation Foundation)和Silverlight应用开发中,DataGrid和ItemsControl是两个常用的UI控件,用于展示数据。本文将深入探讨如何利用这两个控件实现1:N关系的数据绑定,即一...
三、ItemsControl模型....................................... 38 1、使用ItemSource属性................................................ 38 2、使用Items属性...................................................
在WPF(Windows Presentation Foundation)开发中,ItemsControl是一个非常重要的控件,它允许我们显示一组数据项。在某些场景下,我们可能需要根据数据的特定属性或规则将这些数据分组,并为每个分组应用不同的样式...
- **ItemsControl模型**: - **使用ItemSource属性**: 绑定数据集合并为每个项目提供模板。 - **使用Items属性**: 显示一个固定的数据集合。 - **HeaderedItemsControl模型**: 结合了标题和多项内容显示的特点。 #...
三、ItemsControl模型 ...................................................................................... 1、使用ItemSource 属性 .......................................................................
目录 WPF体系结构 .......................................................................................................................................................... 3 WPF应用程序管理 .............
WPF控件内容模型由四个基本类构成,它们分别是`ContentControl`、`HeaderedContentControl`、`ItemsControl`以及`HeaderedItemsControl`。 1. **ContentControl**: `ContentControl`是最基础的内容模型,它允许...
在Windows Presentation Foundation (WPF)中,控件内容模型是构建用户界面的核心组成部分,它定义了控件如何呈现和管理其内容。WPF中的控件主要基于四个基本内容模型: 1. **ContentControl** - 这是最基础的内容...
本示例“SelectedItemsBindingDemo”着重讲解如何将ItemsControl(如ListBox或ListView)的SelectedItems属性绑定到ViewModel(视图模型),以便在用户选择多个项目时,ViewModel能够捕获这些选择并进行相应的处理。...
- 在XAML中设置ItemsControl,将其ItemsSource绑定到ViewModel的属性视图模型列表,并应用数据模板。 ```xml <ItemsControl ItemsSource="{Binding Attributes}" ItemTemplate="{StaticResource ...