2012-04-28 20 views
6
<ListView ItemsSource="{Binding}" Name="myView"> 
      <ListView.View> 
       <GridView> 
        <GridViewColumn DisplayMemberBinding="{Binding fieldA}" Header="Field A" /> 
        <GridViewColumn DisplayMemberBinding="{Binding fieldB}" Header="Field B" />     </GridView> 
      </ListView.View> 
     </ListView> 

Mi piacerebbe sapere come formattare la mia visualizzazione elenco in modo che se object.fieldA == "mele", il carattere è rosso nella cella campoA.Come posso cambiare il colore del carattere in una cella di un ListView WPF a seconda del valore della cella?

Grazie boffins.

risposta

6

È necessario utilizzare un DataTemplate per mostrare il valore fieldA e aggiungere un trigger la modifica della proprietà Foreground per un dato valore.

Vedere anche Data Templating Overview su MSDN.

<GridViewColumn Header="Field A"> 
    <GridViewColumn.CellTemplate> 
     <DataTemplate> 
      <TextBlock x:Name="Txt" Text="{Binding fieldA}" /> 
      <DataTemplate.Triggers> 
       <DataTrigger Binding="{Binding fieldA}" Value="apples"> 
        <Setter TargetName="Txt" Property="Foreground" Value="Red" /> 
       </DataTrigger> 
      </DataTemplate.Triggers> 
     </DataTemplate> 
    </GridViewColumn.CellTemplate> 
</GridViewColumn> 
+0

Grazie, è grandioso. Grazie anche per il link. – jsj

Problemi correlati