1

我正在尝试将 Forderground 依赖属性绑定到我的 UIControl,以便它以用户希望的颜色绘制。由于 myUiControl.Foderground 自动完成,我想我可以像这样将它绑定到 XAML 文件中:

{Binding ElementName=rootControl, Path=Forderground}

调试 VS 时说它找不到与此 DependencyProperty 绑定的源。但我不知道为什么会这样。

另外,如何在调试时列出对象的所有依赖属性?

4

2 回答 2

0

您能否确认您的“rootControl”元素在 xaml 标记中的定义早于您的 Binding 持有者?通常绑定绑定到较早声明的元素。

如果您的意思是在调试时使用 ImmediateWindow 和 IntelliSense,那么每个依赖属性元数据通常都有公共静态访问修饰符。例如,您可以键入“控制”。并观察所有相应的依赖属性、路由事件和附加属性成员。

希望这可以帮助。

于 2009-03-30T17:35:30.670 回答
0

更新:如果以下内容对您来说还不够,请尝试下载此示例并查看它。

ElementName 需要设置为根控件的“x:Name”,Path 需要设置为要绑定到的根元素上的属性。如果没有名称,它将找不到您所指的元素(因此出现初始错误),并且没有 Path 它不会绑定到正确的属性(在运行时检查您的输出是否有错误)。

试试这个:

<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid x:Name="root" Background="Green">
    <Button Background="White" Margin="100">
        <TextBlock Background="{Binding ElementName=root, Path=Background}" Text="TESTING TESTING"/>
    </Button>
</Grid>

于 2009-04-01T22:41:02.573 回答