在 WPF 上没有前缀的单选按钮绑定到特定值

Radio buttons binding on specific value without prefix on WPF

我有一个 window,它有两个单选按钮,第二个有一个 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:

<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;
}

给绑定添加一个小延迟(Value="{Binding dnsLabelCount, Delay=250}"),源属性不会立即更新