DataGrid.RowHeaderStyle Eigenschaft

Definition

Ruft den Stil ab, der auf alle Zeilenheader angewendet wird, oder legt diesen fest.Gets or sets the style applied to all row headers.

public:
 property System::Windows::Style ^ RowHeaderStyle { System::Windows::Style ^ get(); void set(System::Windows::Style ^ value); };
public System.Windows.Style RowHeaderStyle { get; set; }
member this.RowHeaderStyle : System.Windows.Style with get, set
Public Property RowHeaderStyle As Style

Eigenschaftswert

Der Stil, der auf alle Zeilenheader im DataGrid-Objekt angewendet wird.The style applied to all row headers in the DataGrid. Der registrierte Standardwert ist null.The registered default is null. Weitere Informationen zu Einflüssen auf diesen Wert finden Sie unter DependencyProperty.For more information about what can influence the value, see DependencyProperty.

Beispiele

Im folgenden Beispiel wird gezeigt, wie nummerierte Zeilen im Zeilen Header angezeigt werden, indem eine Bindung mit einem Wert Konverter Content an die- DataGridRowHeaderEigenschaft des-Objekts angewendet wird.The following example shows how to display numbered rows in the row header by applying a binding with a value converter to the Content property of the DataGridRowHeader. Der Konverter wird als Ressource erstellt, indem der Namespace und eine Instanz der Klasse erstellt werden.The converter is created as a resource by mapping the namespace and creating an instance of the class. Weitere Informationen finden Sie unter Übersicht über Datenbindung.For more information, see Data Binding Overview.

<Window.Resources>
    <local:ConvertItemToIndex x:Key="IndexConverter"/>     
</Window.Resources>
<Grid>
    <DataGrid Name="DG1" ItemsSource="{Binding}" CanUserAddRows="False" CanUserDeleteRows="False" >
        <!--Bind the Content property of the RowHeaderStyle to the Converter to create numbered rows-->
        <DataGrid.RowHeaderStyle>
            <Style TargetType="{x:Type DataGridRowHeader}">
                <Setter Property="Content" Value="{Binding Converter={StaticResource IndexConverter}}" />
            </Style>
        </DataGrid.RowHeaderStyle>
    </DataGrid>
</Grid>
public class ConvertItemToIndex : IValueConverter
{
    #region IValueConverter Members
    //Convert the Item to an Index
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        try
        {
            //Get the CollectionView from the DataGrid that is using the converter
            DataGrid dg = (DataGrid)Application.Current.MainWindow.FindName("DG1");
            CollectionView cv = (CollectionView)dg.Items;
            //Get the index of the item from the CollectionView
            int rowindex = cv.IndexOf(value)+1;

            return rowindex.ToString();
        }
        catch (Exception e)
        {
            throw new NotImplementedException(e.Message);
        }
    }
     //One way binding, so ConvertBack is not implemented
    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        throw new NotImplementedException();
    }

    #endregion
}
Public Class ConvertItemToIndex
    Implements IValueConverter

    Public Function Convert(value As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.Convert
        Try
            'Get the CollectionView from the DataGrid that is using the converter 
            Dim dg As DataGrid = DirectCast(Application.Current.MainWindow.FindName("DG1"), DataGrid)
            Dim cv As CollectionView = DirectCast(dg.Items, CollectionView)
            'Get the index of the item from the CollectionView 
            Dim rowindex As Integer = cv.IndexOf(value) + 1

            Return rowindex.ToString()

        Catch e As Exception
            Throw New NotImplementedException(e.Message)
        End Try
    End Function

    Public Function ConvertBack(value As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.ConvertBack
        Throw New NotImplementedException()
    End Function
End Class

Hinweise

Wenden Sie Style ein an, um die visuelle Darstellung aller Zeilen Header DataGridin zu aktualisieren.Apply a Style to update the visual appearance of all the row headers in the DataGrid. Um einen Style für einen Zeilen Header zu definieren, geben Sie DataGridRowHeadereinen TargetType von an.To define a Style for a row header, specify a TargetType of DataGridRowHeader.

Sie können auch die RowHeaderStyle -Eigenschaft verwenden, um eine beliebige Eigenschaft von DataGridRowHeaderzu aktualisieren.You can also use the RowHeaderStyle property to update any property of DataGridRowHeader.

Ein Style kann auf alle Zeilen Header oder auf einen einzelnen Zeilen Header angewendet werden.A Style can be applied to all row headers, or to an individual row header. Wenn Sie ein Style auf einen einzelnen Header anwenden möchten, DataGridRow.HeaderStyle legen Sie die-Eigenschaft fest, DataGrid.RowHeaderStyle die Vorrang vor der-Eigenschaft hat.To apply a Style to an individual header, set the DataGridRow.HeaderStyle property, which takes precedence over the DataGrid.RowHeaderStyle property.

Gilt für:

Siehe auch