0

2 つのラジオ ボタンがあるウィンドウがあり、2 番目には 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;
}
4

1 に答える 1