ラジオボタンの1つを押すと、コンボボックスが有効になります。コンボボックスIsCheckedを同じグループの4つのボタンにバインドするにはどうすればいいですか?
public class BooleanOrConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
foreach (object value in values)
{
if (value is bool && (bool) value)
return true;
}
return false;
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
return Enumerable.Repeat(DependencyProperty.UnsetValue, targetTypes.Length).ToArray();
}
}
定義:あなたは(そして、あなたがしなければならない)バインディングを経由してこの問題を解決する場合の値のいずれかがtrue
(ブールOR)であるとして
<RadioButton x:Name="A" GroupName="rButton" Content="A" Grid.Column="4"/>
<RadioButton x:Name="B" GroupName="rButton" Content="B" Grid.Column="4"/>
<RadioButton x:Name="C" GroupName="rButton" Content="C" Grid.Column="4"/>
<RadioButton x:Name="D" GroupName="rButton" Content="D" Grid.Column="4"/>
<ComboBox IsEnabled="{Binding IsChecked,?? }" Grid.Column="5" Width="120" Height="30"/>
明確にするために、RadioButtonsの**が**チェックされたら、ComboBoxを有効にしますか? –
@Manfred Radlwimmerはい – sivan24