Gewusst wie: Anwenden einer Formatvorlage für die Zelle an die DataGrid-Zelle
Habe ich Folgendes DataGrid
<DataGrid x:Name="cultureDataGrid"
Grid.Row="1"
CellStyle="{StaticResource DataGridCell}"
ItemsSource="{Binding Cultures,
NotifyOnSourceUpdated=True,
UpdateSourceTrigger=PropertyChanged,
Mode=TwoWay,
IsAsync=True}"
Style="{x:Null}" >
<DataGrid.Columns>
<DataGridTextColumn Header="Code" Binding="{Binding Code}" IsReadOnly="True"/>
<DataGridTextColumn Header="Language" Binding="{Binding Language}" IsReadOnly="True"/>
<DataGridTextColumn Header="LocalName" Binding="{Binding LocalName}" IsReadOnly="True"/>
</DataGrid.Columns>
</DataGrid>
Ich habe folgende Zelle den Stil ändern das ausgewählte Backcolor
<Style TargetType="DataGridCell" BasedOn="{StaticResource {x:Type DataGridCell}}">
<Setter Property="Background" Value="White"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="Red"/>
<Setter Property="Foreground" Value="White"/>
</Trigger>
</Style.Triggers>
</Style>
Habe ich versucht, die Anwendung der CellStyle="{StaticResource DataGridCell}"
wie oben gezeigt, und mit DynamicResource
aber die Ressource nicht aufgelöst werden. Ich habe importiert die richtige Ressource dictionary wie andere Stile, die arbeiten Was mache ich hier falsch?
Vielen Dank für Ihre Zeit.
Unter der Annahme, dass Ihr Stil gehalten, die in einem resource dictionary, würde nicht benötigen Sie ein x:Key-Attribut, um es zu lösen?
InformationsquelleAutor MoonKnight | 2013-09-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Seit Ihr
Style
hat keineKey
du musst nichtCellStyle
auf dieDataGrid
es wird angewendet, um alleDataGridCell
standardmäßig.Wenn Sie nicht wollen, um Sie in alle
DataGridCell
standardmäßig geben dem style einex:Key
und legen Sie dieCellStyle
auf dieDataGrid
Beispiel:
Wenn Sie nur
TargetType
ohneKey
, der Stil wird automatisch angewendet, um alle Elemente dieses Typs, es sei denn, Sie haben einen Stil deklariert, die bereits mit StaticResource/DynamicResource, ich habe gerade getestet DataGrid und Wenn ich entfernenCellStyle="{StaticResource DataGridCell}"
aus dem code der Stil angewendet wurdeIch werde eine weitere Frage auf dieser Grundlage beantworten... ich wäre sehr dankbar, wenn Sie könnten einige mehr Weisheit.
Diese Frage war wieder mein Fehler - ich bin zu Bett gehen... nochmals vielen Dank, es ist am meisten geschätzt.
InformationsquelleAutor sa_ddam213
Der Stil angewendet werden, um nur einige DataGridRow :
Erstellen Sie Ihre DataGridCell Stil :
Verwenden Sie es in der Spalte, die Sie wollen
InformationsquelleAutor Mr Rubix