DataGrid.RowDetailsTemplate Propiedad

Definición

Obtiene o establece la plantilla que se usa para mostrar los detalles de fila.

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 propiedad

Plantilla que se utiliza para mostrar los detalles de la fila. El valor predeterminado registrado es null. Para obtener más información sobre lo que puede afectar al valor, vea DependencyProperty.

Ejemplos

En el ejemplo siguiente se muestra un DataGrid con un RowDetailsTemplate elemento insertado definido. DataGrid Muestra tres valores en cada fila y tres valores más en la sección de detalles cuando se selecciona la fila. Este ejemplo forma parte de un ejemplo más grande disponible en el tema How to: Add Row Details to a DataGrid Control .

<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>

Comentarios

Puede personalizar la presentación de datos en mediante DataGrid la adición de una sección de detalles de fila. Agregar una sección de detalles de fila permite agrupar algunos datos en una plantilla que, opcionalmente, está visible o contraída.

La plantilla de detalles de fila se define como XAML en línea o como un recurso. Una plantilla de datos que se agrega como un recurso se puede usar en todo el proyecto sin volver a crear la plantilla. Una plantilla de datos que se agrega como XAML en línea solo es accesible desde el control donde se define.

Puede modificar antes RowDetailsTemplate de que se muestre controlando el LoadingRowDetails evento. Debe controlar el UnloadingRowDetails evento para deshacer los cambios realizados al cargar los detalles de la fila.

Se aplica a

Consulte también