无法绑定到属性

Can't bind to a property

我有以下标记。

<TextBox x:Name="Address" 
         Text="{x:Static local:MainWindow.Boundie.SomeProp}" 
</TextBox>

在后面的代码中,我有一个像这样的静态属性。

static Something Boundie { get; set; }

public class Something { public String SomeProp { get; set; } }

问题是,当我将鼠标悬停在 Boundie 上时,它会唠叨 "type expected",当我将鼠标悬停在 SomeProp[= 上时,它会显示 "static member expected" 16=]。当我省略后者时,它只会抱怨预期的类型是 String 但它只会看到 Something.

如何绑定到静态成员的非静态字段?

我为什么要这样做?因为我想重用领域对象模型,而那些类没有配备静态成员。

<object property="{x:Static prefix:typeName.staticMemberName}" .../>

http://msdn.microsoft.com/en-us/library/ms742135.aspx

SomeProp 是实例 属性,因此您不能使用 x:Static 访问它。您可以使用静态 SourcePath

的组合绑定到它
<TextBox ...
         Text="{Binding 
           Source={x:Static local:MainWindow.Boundie}, 
           Path=SomeProp}"/>