2013-06-02 145 views
0

我在我的XAML中ListView有3項:更改文本的顏色在ListView

<ListView Height="768" Width="220" Background="Silver" > 
    <x:String>Item 1</x:String> 
    <x:String>Item 2</x:String> 
    <x:String>Item 3</x:String> 
</ListView> 

如何更改行中的文本的顏色/文本大小?

此外,作爲一個獎金問題,我怎樣才能得到它,以便該行的背景和文本顏色改變,然後選擇一個項目?

+0

作爲獎勵問題...哈哈 –

回答

0

這個解決方案很簡單:

如果你想爲所有的項目相同的顏色,然後通過以下方式將是合適的:

<ListView Height="768" Width="220" Background="Silver"> 

    <ListView.ItemContainerStyle> 
     <Style TargetType="ListViewItem"> 
      <Setter Property="Foreground" Value="Blue"></Setter> 
     </Style> 
    </ListView.ItemContainerStyle> 

    <system:String>Item 1</system:String> 
    <system:String>Item 2</system:String> 
    <system:String>Item 3</system:String> 
</ListView> 

爲了特定項目有獨特的色彩,你應該把AlternationCount屬性爲ListView本身:

<ListView AlternationCount="50" Height="768" Width="220" Background="Silver"> 

和內ItemContainerStyle觸發。這裏的觸發Value性質的物品的指標:

<ListView.ItemContainerStyle> 
    <Style TargetType="ListViewItem"> 
     <Style.Triggers> 
      <Trigger Property="ItemsControl.AlternationIndex" Value="0"> 
       <Setter Property="Foreground" Value="Red"></Setter> 
      </Trigger> 
      <Trigger Property="ItemsControl.AlternationIndex" Value="1"> 
       <Setter Property="Foreground" Value="Blue"></Setter> 
      </Trigger> 
      <Trigger Property="ItemsControl.AlternationIndex" Value="2"> 
       <Setter Property="Foreground" Value="Black"></Setter> 
      </Trigger> 
     </Style.Triggers> 
    </Style> 
</ListView.ItemContainerStyle> 

在這一點上很容易弄清楚如何操作比Foreground其他屬性。