0

私がやろうとしているのは、Telerik ComboBox の選択に基づいて条件可視性トリガー (Silverlight) を設定することです。値が存在するかどうかを調べてから、別のコントロールの可視性を設定するように指示するにはどうすればよいですか? 前のコンボボックスで何かが選択されるまで、別のコントロールは表示されません。

次のようなものです。

<i:Interaction.Triggers>
    <ei:DataTrigger Value="{x:Null}" Binding="{Binding Text,ElementName=FirstComboBox}">
       <ei:ChangePropertyAction TargetName="SecondComboBox" PropertyName="Visibility" Value="Collapsed"/>
    </ei:DataTrigger>
    <ei:DataTrigger Value="{A_VALUE_EXISTS_AS_CHOSEN_FROM_COMBO}" Binding="{Binding Text,ElementName=FirstComboBox}">
       <ei:ChangePropertyAction TargetName="SecondComboBox" PropertyName="Visibility" Value="Visible"/>
    </ei:DataTrigger>
</i:Interaction.Triggers>

Null で値が存在しないかどうかを確認できることはわかっていますが、コンボボックスから選択が行われると、選択されたものに関係なく、値が存在するかどうかをどのように判断して、Visible トリガーを起動できますか?

さらに単純なことに、ComboBox1 に値が選択されている場合、ComboBox2 が表示されるでしょうか? 時間と頭脳を割いてくれてありがとう!

4

1 に答える 1

1
[ValueConversion(typeof(string), typeof(Visibility))]
public class AuditVisabilityConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        string input = (string)value;
        if (string.isNullOrEmpty(input)) return Visibility.Visible;
        else return Visibility.Collapsed;
    }
    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        return string.empty;
    }
}
于 2012-04-24T20:31:29.643 に答える