相关疑难解决方法(0)

如何将RadioButtons绑定到枚举?

我有这样的枚举:

public enum MyLovelyEnum
{
    FirstSelection,
    TheOtherSelection,
    YetAnotherOne
};
Run Code Online (Sandbox Code Playgroud)

我的DataContext中有一个属性:

public MyLovelyEnum VeryLovelyEnum { get; set; }
Run Code Online (Sandbox Code Playgroud)

我的WPF客户端中有三个RadioButton.

<RadioButton Margin="3">First Selection</RadioButton>
<RadioButton Margin="3">The Other Selection</RadioButton>
<RadioButton Margin="3">Yet Another one</RadioButton>
Run Code Online (Sandbox Code Playgroud)

现在如何将RadioButtons绑定到属性以进行正确的双向绑定?

data-binding wpf enums radio-button

400
推荐指数
4
解决办法
13万
查看次数

来自XAML的引用嵌套枚举类型

我似乎无法从XAML引用公共嵌套枚举类型.我上课了

namespace MyNamespace
{
  public class MyClass
  {
    public enum MyEnum
    {
       A,
       B,
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我尝试MyEnum像这样在Xaml中引用:

xmlns:MyNamespace="clr-namespace:MyNamespace;assembly=MyApp"
....

{x:Type MyNamespace:MyClass:MyEnum}    // DOESN'T WORK
Run Code Online (Sandbox Code Playgroud)

但VS抱怨它无法找到公共类型MyEnum.我也尝试使用+基于这篇文章的答案之一的语法...

{x:Type MyNamespace:MyClass+MyEnum}    // DOESN'T WORK
Run Code Online (Sandbox Code Playgroud)

但这也不起作用.

请注意,x:Static 适用于+语法:

{x:Static MyNamespace:MyClass+MyEnum.A}  // WORKS
Run Code Online (Sandbox Code Playgroud)

如果我MyEnum离开,MyClass我也可以参考它.但不是如果它是嵌套的......

那我错过了什么?如何使用XAML引用嵌套枚举x:Type?(注意,我不是试图实例化任何东西,只是引用类型).

UPDATE

看起来这只是VS 2010设计师的一个错误.设计师抱怨说Type MyNamespace:MyClass+MyEnum was not found.但应用程序似乎运行并正确访问嵌套类型.我也尝试使用嵌套类,它在运行时工作.

可能的开放式错误:http://social.msdn.microsoft.com/forums/en-US/wpf/thread/12f3e120-e217-4eee-ab49-490b70031806/

相关线程:在xaml中编写嵌套类型时的设计时错误

c# xaml

10
推荐指数
1
解决办法
4747
查看次数

标签 统计

c# ×1

data-binding ×1

enums ×1

radio-button ×1

wpf ×1

xaml ×1