我打開我的DataGrid,顯示出在黑一些列數值的前景,同樣的數據都寫在紅色等欄目,只是說不值確實存在在那裏,尚未編輯。如果有人用紅色改變數字,他們應該變成黑色。更改DataGrid細胞
我有寫在XAML一個風格的DatagridCell -
<Window.Resources>
<Style x:Key="D3ForegroundStyle" TargetType="{x:Type DataGridCell}" >
<Setter Property="Foreground" Value="Black" />
<Style.Triggers>
<DataTrigger Binding="{Binding Path=D3StatusVal}" Value="inherited">
<Setter Property="Foreground" Value="Red" />
</DataTrigger>
</Style.Triggers>
</Style>
</Window.Resources>
D3StatusVal這是其值可以是「正常」或「繼承」的字符串。 風格被鏈接到列這樣:
<DataGridTextColumn.CellStyle>
<Style TargetType="{x:Type DataGridCell}" BasedOn="{StaticResource D3ForegroundStyle}"/>
</DataGridTextColumn.CellStyle>
第一次,不久後我打開窗戶,數據網格被填充以適當的方式,因爲我喜歡,因此與D3StatusVal的價值,有些價值顯示黑色和其他紅色。在此之後,如果我嘗試更改單元格的數據,則不會發生任何事情(即使用單元格顏色),即使D3StatusVal的值發生更改,並且PropertyChanged(帶有x:name列)的一個事件被稱爲 提前。
沒有任何暗示?!好的,我會以更一般的方式提出問題。 讓我說,我想每次更改其內容(不依賴於單元格中的值寫入)時,以編程方式更改單元格的前景,那麼執行此操作的正確方法是什麼?
號請給我一個提示,我該怎麼辦? THX –
編譯器說,即使之前的XML編輯,「DynamicResource是不支持WPF項目「... –