【发布时间】:2014-12-30 17:21:37
【问题描述】:
如果选择了 listviewitem,我正在尝试更改作为 GridViewColumn.CellTemplate 的数据模板的文本框的前景色(文本颜色):
<ListView ItemsSource="{Binding Components}"
Style="{StaticResource PrimaryListViewStyle}"
ItemContainerStyle="{DynamicResource ListViewItemContainerStyle}"
Width="150"
MinHeight="150"
SelectionMode="Single"
cal:Message.Attach="[Event SelectionChanged]=[Action ActivateAttributesView($this.SelectedItem)]">
<ListView.View>
<GridView ColumnHeaderContainerStyle="{StaticResource PrimaryGridViewColumnHeaderStyle}">
<GridViewColumn Header="Component Name">
<GridViewColumn.CellTemplate>
<DataTemplate DataType="{x:Type viewModels:ComponentViewModel}">
<TextBox Text="{Binding Name}">
<TextBox.Resources>
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<Trigger Property="ListViewItem.IsSelected"
Value="False">
<Setter Property="Foreground"
Value="Green" />
</Trigger>
<Trigger Property="ListViewItem.IsSelected"
Value="True">
<Setter Property="Foreground"
Value="Black" />
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Resources>
</TextBox>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
这是一张图片。不幸的是,我不允许直接粘贴图像...:
http://de.tinypic.com/r/262s8bb/8
所选行中的文本应显示为“黑色”。
谢谢。
【问题讨论】: