3
我有一個觀點DisplayTestsView.cs並在該視圖我有有條件設置一個GridViewColumn細胞模板
<ListView ItemsSource="{Binding SelectedTechnician.Tests}"
SelectedItem="{Binding SelectedTest}" x:Name="AvailableTestsListView" Height="140">
<ListView.View>
<GridView>
<GridViewColumn Header="Id" Width="auto" DisplayMemberBinding="{Binding Id}"/>
<GridViewColumn Header="Test" Width="auto" DisplayMemberBinding="{Binding TestTypeName}"/>
<GridViewColumn Header="Status" Width="auto" DisplayMemberBinding="{Binding StutusTypeName}"/>
</GridView>
</ListView.View>
</ListView>
我想StatusTypeName單元格文本的文本顏色是基於條件的特定顏色。例如,如果StatusTypeName等於「不完整」,那麼我希望單元格中的文本變爲紅色。
測試(實體)作爲一個從視圖中看到該清單是SelectedTechnician.Tests和SelectedTechnician是我的視圖模型(DisplayTestsViewModel的屬性。
我想象一個擁有上GridViewColumn的CellTemplate屬性生效,但對如何有條件地操作模板(一般)沒有深入的瞭解,我不知道從哪裏開始。
即使CellTemplate與它無關如何可以Condititionally設置GridViewColumn的單元格的文本根據上述類似條件改變顏色?
是否可以再存儲這個邏輯的StatusTypeNameToBrushConverter在視圖模型?如果沒有,這樣的事情可以單獨使用觸發器來完成嗎?我在下班回家的路上閱讀了他們的消息。感謝迄今爲止的大力幫助。 – 2013-03-12 01:06:26
其實,忽略上面的評論,我把它全部弄清楚了,你的答案實際上是開箱即用的。我添加了一個用戶控件資源字典來限定您創建的StaticResource的位置。 – 2013-03-12 16:48:32
如果你認爲這篇文章寫得很好,或者對我的表現進行了很好的研究,不要忘了衝擊/提升我的問題。我總是想知道我什麼時候做的事情是正確的。 – 2013-03-12 16:49:07