DataGrid.RowDetailsTemplate Propriedade

Definição

Obtém ou define o modelo que é usado para mostrar os detalhes da linha.

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

Valor de Propriedade

O modelo usado para mostrar os detalhes das linhas. O padrão registado é null. Para mais informações sobre o que pode influenciar o valor, veja DependencyProperty.

Exemplos

O exemplo seguinte mostra um DataGrid com um RowDetailsTemplate inline definido. Apresenta DataGrid três valores em cada linha e mais três valores na secção de detalhes quando a linha é selecionada. Este exemplo faz parte de um exemplo mais amplo disponível no tópico Como: Adicionar Detalhes de Linha a um Controlo 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>

Observações

Pode personalizar a apresentação DataGrid dos dados adicionando uma secção de detalhes da linha. Adicionar uma secção de detalhes de linha permite agrupar alguns dados num modelo que são opcionalmente visíveis ou dobrados.

Defines o modelo de detalhes de linha como XAML inline ou como um recurso. Um modelo de dados adicionado como recurso pode ser usado ao longo do projeto sem necessidade de recriar o modelo. Um modelo de dados adicionado como XAML inline só é acessível a partir do controlo onde está definido.

Pode modificar o RowDetailsTemplate dispositivo antes de ser exibido ao tratar do LoadingRowDetails evento. Deves tratar do UnloadingRowDetails evento para desfazer as alterações feitas ao carregar os detalhes da linha.

Aplica-se a

Ver também