zoukankan      html  css  js  c++  java
  • WPF中radiobutton 的 data binding方法

    WPF中的radiobox通过data binding绑定到一个bool属性后,如下所示,尽管UI可以正确的显示,但是data binding的属性不能正确的更新。比如user点了No之后属性UserChoice还是True。

    <RadioButton Content="Yes" IsChecked="{Binding UserChoice}"/>
    <RadioButton Content="No"/>

    需要用如下的方式:
    <RadioButton Content="Yes" IsChecked="{Binding UserChoice}"/>
    <RadioButton Content="No" IsChecked="{Binding UserChoice, Converter={StaticResource radioConverter}}"/>

    radioconverter如下:
        public class RadioButtonConverter : IValueConverter
        {
            public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
            {
                if (value is bool)
                {
                    return !(bool)value;
                }
                return value;
            }

            public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
            {
                if (value is bool)
                {
                    return !(bool)value;
                }
                return value;
            }
        }

    这样就能正确更新了。
  • 相关阅读:
    PL/SQL 入门
    Nginx 安装和配置
    MySql 优化方案
    类加载器(ClassLoader)
    动态代理入门
    Servlet 3.0 介绍
    反射加强(一)
    Python(1)—is和==区别
    代码题(10)— 验证二叉搜索树、二叉搜索树的最近公共祖先
    代码题(9)— 二叉树的最大、最小深度、平衡二叉树
  • 原文地址:https://www.cnblogs.com/fresky/p/2624629.html
Copyright © 2011-2022 走看看