DataGrid.RowHeaderStyle Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta lo stile applicato a tutte le intestazioni di riga.
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
Valore della proprietà
Stile applicato a tutte le intestazioni di riga in DataGrid. Il valore predefinito registrato è null
. Per ulteriori informazioni sugli elementi che possono influenzare il valore, vedere DependencyProperty.
Esempio
Nell'esempio seguente viene illustrato come visualizzare righe numerate nell'intestazione di riga applicando un'associazione con un convertitore di valori alla Content proprietà dell'oggetto DataGridRowHeader. Il convertitore viene creato come risorsa mappando lo spazio dei nomi e creando un'istanza della classe. Per altre informazioni, vedere Panoramica del data binding.
<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
Commenti
Applicare un Style oggetto per aggiornare l'aspetto visivo di tutte le intestazioni di riga nell'oggetto DataGrid. Per definire un Style oggetto per un'intestazione di riga, specificare un TargetType oggetto di DataGridRowHeader.
È anche possibile usare la RowHeaderStyle proprietà per aggiornare qualsiasi proprietà di DataGridRowHeader.
Un Style oggetto può essere applicato a tutte le intestazioni di riga o a un'intestazione di riga singola. Per applicare un oggetto Style a un'intestazione singola, impostare la proprietà, che ha la DataGridRow.HeaderStyle precedenza sulla DataGrid.RowHeaderStyle proprietà.