ComboBox的启用绑定问题

beautiful_melody 2022-05-17 13:42:29

两个ComboBox 

<ComboBox Name="comboBox1" ItemsSource="{Binding Path=List1}" DisplayMemberPath="Name" />
<ComboBox Name="comboBox2" ItemsSource="{Binding Path=List2}" DisplayMemberPath="Model" />

comboBox2怎么设置  IsEnabled="{Binding ElementName=comboBox1, Path=?}"

Path设置成什么  才能达到 :  只有用户在comboBox1中进行了操作选择,comboBox2才启用

也就是若用户没有在 comboBox1中进行任何选择操作前  comboBox2是不启用状态

...全文
138 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cenxaoi 2022-11-10
  • 打赏
  • 举报
回复

新增一个转换器类 ,代码和窗体类放同个文件。

public class ComboxEnableConver:IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {  //value是comboBox1.SelectedItem
          return (value!=null);
    }
    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return value;
        }
}

增加转换器后,xaml中引入该转换器为资源

<Window.Resources>
   <local: ComboxEnableConver x:Key="cbec"/>
<Window.Resources>

comboBox2设置 IsEnabled="{Binding ElementName=comboBox1,Path=SelectedItem,Converter={StaticResource cbec }}"

  • 打赏
  • 举报
回复

selecteItem不为空,通过converter来判断

8,756

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧