我为组合框添加了触发器,即
当组合框为“禁用”时,“文本”属性应设置为“1”并将 updatesourcetrigger 添加到属性更改。
当组合框为“启用”时,应选择“文本”属性,并将更新源触发器添加到属性更改。
但问题是当组合框被禁用并且“文本”属性设置为“1”时,我无法调用更新源触发器。
下面是 XAML 代码片段:
<ComboBox Name="cmbIntervals"
Grid.Row="5"
Grid.Column="1"
Width="150"
HorizontalAlignment="Left"
VerticalAlignment="Top"
IsEnabled="{Binding ElementName=chkRollingInterval,
Path=IsChecked}"
ItemsSource="{Binding Source={x:Static es:MasterParameters.Instance},
Path=NoOfIntervals}"
Tag="{Binding Path=[NoOfIntervals], Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
>
<ComboBox.Style>
<Style TargetType="{x:Type ComboBox}">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Text" Value="1"/>
<Setter Property="Text" Value="{Binding RelativeSource={RelativeSource Self}, Path=Tag, Mode=TwoWay, UpdateSourceTrigger=Default}"/>
</Trigger>
<Trigger Property="IsEnabled" Value="True">
<Setter Property="Text" Value="{Binding RelativeSource={RelativeSource Self}, Path=Tag, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
</Trigger>
</Style.Triggers>
</Style>
</ComboBox.Style>
</ComboBox>
从上面的 XAML 代码中,当我将组合框“禁用”模式的“文本”属性更新为“1”时,我需要将此“1”值更新为源属性,即“标签”,然后从那里更新为“NoOfIntervals”,但它没有没有发生。
谢谢,纳格