0
我被玩弄,實驗和谷歌搜索本作的最後一小時,不能找出問題。基本上,我有一個列表框,每個項目都有文本塊和複選框。我需要將選中的複選框旁邊的textblock文本更改爲綠色。下面的代碼是我能想到的最好的,但它不起作用。任何幫助表示讚賞。的Silverlight:添加ChangePropertyAction到的DataTemplate
<DataTemplate x:Key="ListBoxTemplate">
<Grid
Width="80">
<TextBlock
x:Name="textBlock"
HorizontalAlignment="Left"
Text="{Binding Data, Converter={StaticResource DataConverter}}"
Foreground="#FF859FAF"
FontSize="12"
TextWrapping="Wrap"
Width="50"
Margin="0"
Grid.Row="10" />
<CheckBox
x:Name="Btn6"
IsChecked="{Binding IsSelected, Mode=TwoWay}"
Cursor="Hand"
Padding="0"
HorizontalAlignment="Right"
Height="32"
VerticalAlignment="Bottom"
RenderTransformOrigin="0.5,0.5"
Width="26"
d:LayoutOverrides="GridBox">
<i:Interaction.Triggers>
<i:EventTrigger
EventName="textBlock">
<ei:ChangePropertyAction
TargetName="textBlock"
TargetObject="{Binding ElementName=textBlock}"
PropertyName="Width"
Value="100">
</ei:ChangePropertyAction>
<i:InvokeCommandAction
Command="{Binding SelectDataCommand, Source={StaticResource ControlViewModel}}"
CommandName="SelectDateRangeCommand"
CommandParameter="{Binding}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</CheckBox>
(對不起我的英文不好) - 這不回答你的問題,但一個簡單的替代方法是結合'IsSelected'用'TextBox.Foreground'並創建一個轉換器,返回'SolidColorBrush'綠色當值是真的。 – Leo
謝謝!我會做的。你爲什麼把它作爲註釋,不回答? – Val
我添加評論,因爲它沒有直接解決你的問題......但因爲它的幫助下,我張貼作爲一個答案太:) – Leo