欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

wpf中根据其他控件或者对象的属性动态控制某一控件的IsEnabled属性

程序员文章站 2022-03-07 11:06:42
...

    今天在写代码的时候,想通过几个不同控件和属性来自动更新某一MenuItem的IsEnabled的值,刚开始使用的是DataTrigger来实现,但是无论怎么写都无法实现,最后悉心研究(思考人生)了4个小时,终于实现。

    直接使用多绑定和多值转换器来绑定到IsEnabled属性上,废话不多说,Show my Code:

//先在Window.Resources中加入转换器实体
<Window.Resources>
    <convert:UserStatusConverter x:Key="userStatus"/>
</Window.Resources>
在xaml或者后台代码中使用多绑定,绑定到某控件的IsEnabled属性上;

代码略。。。请自行百度。


//最后实现一个多值转换器
using System.Windows.Data
namespace xxx
{
  class UserStatusConvert: IMultiValueConverters
{
   public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
  if(xx=true)
    return ture;
  return false;
}
public object[] ConvertBack(object values,Type[] targetType, object parameter, System.Globalization.CultureInfo culture)
{
  return null;
}
}
}



相关标签: .net wpf