我创建了一个自定义Silverlight UserControl。我需要能够通过“Child”属性设置其内容。所以我使用了“[ContentProperty(”Child“)]”class属性:
[ContentProperty("Child")]
public partial class SizeableCheckBox : UserControl
{
public SizeableCheckBox()
{
InitializeComponent();
}
public object Child
{
get { return contentControl1.Content; }
set { contentControl1.Content = value; }
}
UserControl的XAML如下所示:
<Grid x:Name="LayoutRoot" >
<StackPanel Orientation="Horizontal">
<Border x:Name="brdCheck" />
<ContentControl x:Name="contentControl1" />
</StackPanel
...
</Grid>
现在,如果我在我的应用程序中使用UserControl一切正常(即使在VS2010设计模式下):
<my:SizeableCheckBox x:Name="chkTestCheck">
<StackPanel Orientation="Horizontal">
<Image ... />
<Textblock x:Name="txtCheckBoxTest" Text="My Checkbox test" />
</StackPanel>
</my:sizeableCheckBox>
但在我的代码中,我引用了“ txtCheckBoxTest ”,但该对象在运行时为空。我做错了什么?
由于
答案 0 :(得分:0)
你应该可以去chkTestCheck.txtCheckBoxTest.Text 除非我误解了问题