有两个textbox分别用于输入年龄和姓名,一个button用于保存提交textbox与相应的类进行了数据绑定和验证,请问如何实现,当textbox中填写内容验证不通过时,button始终是IsEnable=false,验证通过时为true?

解决方案 »

  1.   

    这样的话要用text_changed,不过对于web form的话,成本是比较高!或许用脚本检测。
      

  2.   

    这个不是针对wpf吧,感觉可以继承INotifyPropertyChanged这个接口进行处理,设置一个bool属性对应button,可以设置一个触发器,具体也不太清楚,没实际用过wpf只是字面上了解了一下。
      

  3.   

    关键是不知道怎么把textbox验证的结果和button绑定起来
      

  4.   

    直接把Button的IsEnabled属性绑定到相应数据类的一个bool属性上,那边验证通过吗就修改属性的值,然后绑定更新Button就可用了。
      

  5.   

    将Button的IsEnable属性绑定到要验证的Textbox的文本上,然后整个Converter,根据传入的文本判断返回值是True还是False。例如:
    xaml文件:
    (包含命名空间及声明Converter对象此处略去)
    <Button ...
    IsEnable="{Binding ElementName=myTextbox,Path=Text,Converter={StaticResource IsEnableConverter}}"
    ... />
    CS文件:
    Converter类实现如下:
         /// <summary>
        /// Created by xuen
        /// IsEnableConverter
        /// </summary>
        public class IsEnableConverter: IValueConverter
        {
            public override Object Convert(Object value, Type targetType, Object parameter, System.Globalization.CultureInfo culture)
            {
                string textboxString = value as string;
                bool isButtonEnable = false;
                if (条件判断为真)
                {
                    isButtonEnable = true;
                }
                else
                {
                    isButtonEnable = false;
                }
                return VideoTitle;
            }
        }
        以上仅供参考,谢谢!
      

  6.   

    关注WPF,但是没有用WPF做过真正的系统,个人认为还不适合真正的商用,还很不成熟
      

  7.   

    WPF技术交流群:群号是:66373396