UI(WPF)に3つのラジオボタンがあります。そのうちの2つを選択して、テキストボックスを有効にします。3番目のものを選択することにより、テキストボックスを無効にする必要があります。マルチバインディングを使用しますか?はいの場合どのように?
質問する
912 次
1 に答える
0
IsEnabled
3 番目の RadioButton の「チェックされていない」状態に設定しないのはなぜですか? 通常、ラジオボタンのグループは、一度に 1 つしかチェックできないという点で排他的です。
<StackPanel>
<StackPanel.Resources>
<convert:InvertBooleanConverter x:Key="InvertConverter" />
</StackPanel.Resources>
<TextBox IsEnabled="{Binding IsChecked, ElementName=radio, Converter={StaticResource InvertConverter}}" />
<RadioButton x:Name="radio" IsChecked="True"/>
</StackPanel>
専用コンバーター付き
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Data;
namespace MyApplication.Converters {
public sealed class InvertBooleanConverter : IValueConverter {
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) {
return !(bool)value;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) {
return DependencyProperty.UnsetValue;
}
}
}
于 2012-11-03T09:39:11.637 に答える