【发布时间】:2009-03-13 22:39:19
【问题描述】:
我有一个由UserControl01.cs 支持的新 UserControl,它公开了两个属性。一个是普通的旧 CLR 属性,另一个是较新的 DP 属性格式。
例如:
string PropertyOne {get;set;}
第二个属性是公共 DP(构造太长,无法在此处列出)。
从 XAML 方面,我希望公开这些值。我该怎么做?
在这两个属性(旧 CLR 以及第二个 DP 包装格式)上,我尝试了如下语法:
<TextBlock Text={Binding Prop1}/>
<TextBlock Text={Binding Source=., Path=Prop1}/>
我尝试在 Resource 字典中放置类类型的 ref 并使用
引用它 <TextBlock Text={Binding Source={StaticReference myType}, Path=Prop1}/>
但这显然会导致堆栈溢出,因为字典会实例化 Control 的第二个副本。
我在某处读过一篇文章,在 WPF 中可以x:Name 控件本身,然后
<TextBlock Text="{Binding {ElementName=theName, Path=Prop1}"/>
但我们在 Ag 中没有 ElementName 绑定,所以不是这样。
- 如何绑定到 UserControl 的属性?任何财产!
- 如果这不可能,并且您只能绑定到 DTO 或其他 BO,那么关于我们应该如何设计想要公开其值的 UserControl 的指导逻辑/解释是什么?
【问题讨论】:
标签: xaml silverlight-2.0