0

我有一个有两个单选按钮的窗口,第二个有一个 IntegerUpDown。

“IsChecked”属性绑定到 IntegerUpDown。

我希望 IntegerUpDown 的值介于 1 和 100 之间,但如果选择了“1” - 我希望打开另一个单选按钮。

问题在键入时开始,例如,“12”。“1”立即轻弹单选按钮,无需等待其他数字。

我的 WPF 代码:

单选按钮 1:

<RadioButton 
    Content="{Resx PatternDialog.MatchOnlySuffix, DefaultValue='suffix'}"
    IsChecked="{Binding dnsLabelCount, Converter={local:DnsLabelCountToBoolConverter}}"/>

单选按钮 2:

<RadioButton 
    Name="matchUpToNumberSuffixRb"
    Content="{Resx PatternDialog.MatchUpToNumberSuffix, DefaultValue='Match'}"
    IsChecked="{Binding dnsLabelCount, Converter={local:DnsLabelCountToBoolConverter Invert=True}}"/>

整数上下:

<IntegerUpDown 
    Name="updown"
    Value="{Binding dnsLabelCount}"
    Width="55" 
    ForceRange="True"
    MinValue="1"
    MaxValue="100"
    IsEnabled="{Binding IsChecked, ElementName=matchUpToNumberSuffixRb}"/>

这是我的转换器,我知道不应该这样,但我不确定将其更改为什么。

public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
    var result = (int)value == 1;
    return Invert ? !result : result;
}
4

1 回答 1

0

Binding()加一个小Delay Value="{Binding dnsLabelCount, Delay=250}",source属性不会立即更新

于 2020-03-01T09:48:06.090 回答