将单选按钮绑定到枚举属性

詹姆斯·R

我想我已经遵循了本给出的例子,但是当按钮被改变我的属性没有改变。有什么建议可以解决我的问题吗?

枚举和类的C#代码

public enum SystemTypes
{
    TypeA,
    TypeB
}

public partial class MainWindow : Window
{

    public MainWindow()
    {
        InitializeComponent();
    }
    SystemTypes systemType = SystemTypes.TypeA;
    public SystemTypes SystemType 
    {
        get { return systemType; }
        set { systemType = value; }
    }
}

public class EnumToBooleanConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        return value.Equals(parameter);
    }

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        return value.Equals(true) ? parameter : Binding.DoNothing;
    }
}

a

        <Canvas>
            <Canvas.Resources>
                <local:EnumToBooleanConverter x:Key="EnumToBooleanConverter" />
            </Canvas.Resources>
            <RadioButton x:Name="TypeARadioButton" Content="TypeA" Canvas.Left="10" Canvas.Top="10" 
                         IsChecked="{Binding Path=SystemType, Converter={StaticResource EnumToBooleanConverter}, ConverterParameter={x:Static local:SystemTypes.TypeA}}" />
            <RadioButton x:Name="TypeBRadioButton" Content="TypeB" Canvas.Left="10" Canvas.Top="31"
                         IsChecked="{Binding Path=SystemType, Converter={StaticResource EnumToBooleanConverter}, ConverterParameter={x:Static local:SystemTypes.TypeB}}" />

        </Canvas>
马克西姆斯

您需要将Binding Mode设置为TwoWay,然后在Converter实现方法中将Convert转换为SystemTypes的ConvertBack方法,在SystemType的settter中包括

set { systemType = value; OnPropertyChanged(() => "SystemType");}

为了填充属性,其值已更改。

OnPropertyChanged(() => "SystemType")

如果实现接口INotifyPropertyChanged,则可以正常工作。我无法确定是否设置DataContext,如果未绑定则无法正常工作。为了纠正这个问题,在InitializeComponent()之后添加

this.DataContext = this;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将单选按钮绑定到枚举属性

来自分类Dev

如何将单选按钮绑定到枚举的属性?

来自分类Dev

将Bootstrap单选按钮绑定到Angular属性

来自分类Dev

C#MVVM:将单选按钮绑定到布尔属性

来自分类Dev

使用 vuejs 将模型属性绑定到单选按钮

来自分类Dev

将单选按钮绑定到对象数组

来自分类Dev

将值从datagridview绑定到单选按钮

来自分类Dev

将组合绑定到本地枚举属性

来自分类Dev

如何将动态单选按钮绑定到Ember中的控制器属性

来自分类Dev

如何将字符串属性绑定到视图中的单选按钮?

来自分类Dev

将Knockout可观察属性绑定到引导单选按钮值失败

来自分类Dev

将标志枚举绑定到控件并返回到枚举属性

来自分类Dev

WPF绑定到单选按钮如果单选按钮重复到相同的属性...,。不更新模型

来自分类Dev

将多个单选按钮绑定到单个布尔值

来自分类Dev

将布尔值绑定到单选按钮

来自分类Dev

AngularJs:将ng-model绑定到单选按钮列表

来自分类Dev

Aurelia 在检查更改时将值绑定到单选按钮

来自分类Dev

如何使用 v-for 将单选按钮绑定到容器?

来自分类Dev

如何将 onchange 绑定到每个单选按钮组

来自分类Dev

如何将单选按钮值绑定到模型

来自分类Dev

将枚举绑定到AspxListBox

来自分类Dev

将脚本绑定到单选按钮:奇怪的行为:未按名称绑定

来自分类Dev

如何将按钮内容绑定到工具提示的单选按钮中?

来自分类Dev

绑定到Bootstrap单选按钮状态更改

来自分类Dev

WPF绑定到选定的单选按钮

来自分类Dev

动态单选按钮绑定检查的属性是动态的

来自分类Dev

JavaFX:将按钮的禁用属性绑定到ObservableList大小

来自分类Dev

单选按钮将无法正确绑定

来自分类常见问题

AngularJS-将单选按钮绑定到具有布尔值的模型

Related 相关文章

  1. 1

    将单选按钮绑定到枚举属性

  2. 2

    如何将单选按钮绑定到枚举的属性?

  3. 3

    将Bootstrap单选按钮绑定到Angular属性

  4. 4

    C#MVVM:将单选按钮绑定到布尔属性

  5. 5

    使用 vuejs 将模型属性绑定到单选按钮

  6. 6

    将单选按钮绑定到对象数组

  7. 7

    将值从datagridview绑定到单选按钮

  8. 8

    将组合绑定到本地枚举属性

  9. 9

    如何将动态单选按钮绑定到Ember中的控制器属性

  10. 10

    如何将字符串属性绑定到视图中的单选按钮?

  11. 11

    将Knockout可观察属性绑定到引导单选按钮值失败

  12. 12

    将标志枚举绑定到控件并返回到枚举属性

  13. 13

    WPF绑定到单选按钮如果单选按钮重复到相同的属性...,。不更新模型

  14. 14

    将多个单选按钮绑定到单个布尔值

  15. 15

    将布尔值绑定到单选按钮

  16. 16

    AngularJs:将ng-model绑定到单选按钮列表

  17. 17

    Aurelia 在检查更改时将值绑定到单选按钮

  18. 18

    如何使用 v-for 将单选按钮绑定到容器?

  19. 19

    如何将 onchange 绑定到每个单选按钮组

  20. 20

    如何将单选按钮值绑定到模型

  21. 21

    将枚举绑定到AspxListBox

  22. 22

    将脚本绑定到单选按钮:奇怪的行为:未按名称绑定

  23. 23

    如何将按钮内容绑定到工具提示的单选按钮中?

  24. 24

    绑定到Bootstrap单选按钮状态更改

  25. 25

    WPF绑定到选定的单选按钮

  26. 26

    动态单选按钮绑定检查的属性是动态的

  27. 27

    JavaFX:将按钮的禁用属性绑定到ObservableList大小

  28. 28

    单选按钮将无法正确绑定

  29. 29

    AngularJS-将单选按钮绑定到具有布尔值的模型

热门标签

归档