DataGrid.RowDetailsTemplate 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置用于显示行详细信息的模板。
public:
property System::Windows::DataTemplate ^ RowDetailsTemplate { System::Windows::DataTemplate ^ get(); void set(System::Windows::DataTemplate ^ value); };
public System.Windows.DataTemplate RowDetailsTemplate { get; set; }
member this.RowDetailsTemplate : System.Windows.DataTemplate with get, set
Public Property RowDetailsTemplate As DataTemplate
属性值
用于显示行详细信息的模板。 已注册的默认值为 null
。 有关可以影响值的因素的更多信息,请参见 DependencyProperty。
示例
以下示例演示了一个DataGridRowDetailsTemplate内联已定义的 。 DataGrid选择行时, 每行显示三个值,在详细信息部分显示另外三个值。 此示例是 如何:向 DataGrid 控件添加行详细信息 主题中提供的更大示例的一部分。
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525"
Loaded="Window_Loaded">
<Grid>
<DataGrid Name="dataGrid1" IsReadOnly="True" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridTextColumn Header="Company Name" Binding="{Binding CompanyName}"></DataGridTextColumn>
<DataGridTextColumn Header="Contact First Name" Binding="{Binding FirstName}"></DataGridTextColumn>
<DataGridTextColumn Header="Contact Last Name" Binding="{Binding LastName}"></DataGridTextColumn>
</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<Border BorderThickness="0" Background="BlanchedAlmond" Padding="10">
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<TextBlock FontSize="12" Text="Email: " VerticalAlignment="Center" />
<TextBlock FontSize="16" Foreground="MidnightBlue" Text="{Binding EmailAddress}" VerticalAlignment="Center" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock FontSize="12" Text="Phone: " VerticalAlignment="Center" />
<TextBlock FontSize="16" Foreground="MidnightBlue" Text="{Binding Phone}" VerticalAlignment="Center" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock FontSize="12" Text="Sales Person: " VerticalAlignment="Center" />
<TextBlock FontSize="16" Foreground="MidnightBlue" Text="{Binding SalesPerson}" VerticalAlignment="Center" />
</StackPanel>
</StackPanel>
</Border>
</DataTemplate>
</DataGrid.RowDetailsTemplate>
</DataGrid>
</Grid>
</Window>
注解
可以通过添加行详细信息部分来自定义 中的数据 DataGrid 表示形式。 通过添加行详细信息部分,可对模板中的一些可见或折叠(可选)数据进行分组。
将行详细信息模板定义为内联 XAML 或资源。 可在整个项目中使用作为资源添加的数据模板,而无需重新创建模板。 作为内联 XAML 添加的数据模板只能从定义它的控件访问。
可以通过处理 LoadingRowDetails 事件,RowDetailsTemplate在显示之前对其进行修改。 应处理 UnloadingRowDetails 事件以撤消加载行详细信息时所做的更改。