我有一個WPF列表框,其中包含一個來自特定類的項目的綁定列表。事情是這樣的:列表框項目WPF,不同項目的不同背景顏色
ObservableCollection<MyTable> tables = new ObservableCollection<MyTable>();
...
listTables.ItemsSource = tables;
而XAML:
<ListBox HorizontalAlignment="Left" Margin="8,10,0,0" Name="listTables" Width="153" ItemsSource="{Binding tables}" SelectionChanged="listTables_SelectionChanged" Height="501" VerticalAlignment="Top">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="1">
<TextBlock Grid.Column="1" Text="{Binding tableName}" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
一切工作正常。我現在想要做的是對ListBox中的每個項目有不同的背景,具體取決於類的某個屬性。例如,假設MyTable類有一個名爲isOccupied的屬性。如果這個標誌是爲某個項目設置的,我希望它在ListBox中有一個紅色背景,如果它不是,那麼我想讓它具有綠色背景。如果該屬性發生變化,則背景應相應更改。
有關如何實現此目的的任何提示?我現在正在查找有關ItemContainerStyle的一些信息,但是我對此比較陌生,所以我不確定是否遵循正確的路徑。
你可能還有eran的舊+1。 ;) – Sheridan
這非常有幫助,就像一個魅力。非常感謝你! – mmvsbg