2013-02-18 84 views
1

为什么在这个世界上这个简单的东西不起作用?这是WPF + .NET 4.0 + VB.NET和所有我想要做到的是一个组合框绑定到一个类的静态属性:WPF绑定到静态成员

<ComboBox ItemsSource="{Binding Source={x:Static local:CommonLists.JobStatusTypes }}" /> 

命名空间“本地”导入为:

xmlns:local="clr-namespace:MyProject1" 

和类是:

Friend NotInheritable Class CommonLists 
    Public Shared ReadOnly Property JobStatusTypes As List(Of JobStatusType) 
     Get 
      ... 
     End Get 
    End Property 
End Class 

顺便说一句,它执行就好了;只有WPF设计者(VS2010)有问题,告诉我'找不到类型CommonLists'。

编辑: 这个问题似乎比这更一般。我无法使用xmlns语法访问WPF中的任何名称空间。

回答

0

确定。我自己找到答案。如果我像这样导入我的名字空间:

xmlns:local="clr-namespace:MyProject1;assembly=" 

它似乎在设计器和运行时都能很好地工作。我在某处读到,将程序集=(后面没有任何内容)添加到您的命名空间导入中会告诉XAML查看当前程序集。

0

你可以试试这个,

ItemsSource="{Binding Source={x:Static Member=local:CommonLists.JobStatusTypes}}"