2011-01-05 3 views

Antwort

2

Sie können dies in der Benutzeroberfläche mit einem Multibinder ausführen. Dies würde wie folgt aussehen:

<TextBlock> 
    <TextBlock.IsEnabled> 
    <MultiBinding Converter="{StaticResource MultiConverter}"> 
     <Binding ElementName="MyCheckBox" Path="IsChecked" /> 
     <Binding ElementName="MyRadioButton" Path="IsChecked" /> 
    </MultiBinding> 
    </TextBlock.IsEnabled> 
</TextBlock> 

<CheckBox x:Name="MyCheckBox"/> 
<RadioButton x:Name="MyRadioButton"/> 

Wo der Wandler auf dem überprüften Zustand des Radios und Checkbox

public class MultiConverter: IMultiValueConverter 
{ 
    public object Convert(object[] values, Type targetType, object parameter, 
     System.Globalization.CultureInfo culture) 
    { 
    bool isCheckBoxChecked = (bool)value[0]; 
    bool isRadioButtonChecked = (bool)value[1]; 
    return isCheckBoxChecked && isRadioButtonChecked; 
    } 

    public object[] ConvertBack(object value, Type[] targetTypes, object parameter, 
     System.Globalization.CultureInfo culture) 
    { 
    throw new NotImplementedException(); 
    } 
} 
+0

Dank sieht, das funktioniert. Ich musste nur eine zusätzliche Zeile hinzufügen, um den StaticResource MultiConverter in Windows.Resources zu deklarieren. – aliensurfer

Verwandte Themen