DataGrid.RowDetailsTemplate Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dient zum Abrufen oder Festlegen der Vorlage, die zum Anzeigen der Zeilendetails verwendet wird.
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
Eigenschaftswert
Die Vorlage, die zum Anzeigen der Zeilendetails verwendet wird. Der registrierte Standardwert ist null. Weitere Informationen dazu, was den Wert beeinflussen kann, finden Sie unter DependencyProperty.
Beispiele
Das folgende Beispiel zeigt eine DataGrid mit einer RowDetailsTemplate definierten Inline. Im DataGrid Detailabschnitt werden drei Werte in jeder Zeile und drei weitere Werte im Detailabschnitt angezeigt, wenn die Zeile ausgewählt ist. Dieses Beispiel ist Teil eines größeren Beispiels, das im Thema "How to: Add Row Details to a DataGrid Control " verfügbar ist.
<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>
Hinweise
Sie können die Datenpräsentation im DataGrid Abschnitt "Zeilendetails" anpassen. Durch das Hinzufügen eines Abschnitts "Zeilendetails" können Sie einige Daten in einer Vorlage gruppieren, die optional sichtbar oder reduziert ist.
Sie definieren die Zeilendetails-Vorlage entweder als Inline-XAML oder als Ressource. Eine Als Ressource hinzugefügte Datenvorlage kann im gesamten Projekt verwendet werden, ohne die Vorlage erneut zu erstellen. Auf eine Datenvorlage, die als Inline-XAML hinzugefügt wird, kann nur über das Steuerelement zugegriffen werden, auf das sie definiert ist.
Sie können die Anzeige vor der RowDetailsTemplate Anzeige ändern, indem Sie das LoadingRowDetails Ereignis behandeln. Sie sollten das UnloadingRowDetails Ereignis behandeln, um Änderungen rückgängig zu machen, die beim Laden der Zeilendetails vorgenommen werden.