我有一个名为(例如)MyPanel的自定义UserControl,我想在另一个XAML文件中使用它。我想设置MyPanel的属性,例如放置MyPanel的XAML文件中的“Title”,如下所示:
<UserControl x:Name="ContainerControl">
<local:MyPanel Title="Whatever I Want" />
</UserControl>
我希望MyPanel的“Title”属性能够填充MyPanel中的TextBlock。 如何在MyPanel中设置代码和/或XAML以支持此类属性?
我甚至不确定这是否具有约束力,所以请原谅我的无知,如果这是错误的。
答案 0 :(得分:2)
我能想到的最简单的解决方案是: -
MyPanel xaml: -
<UserControl x:Class="SilverlightApplication1.MyPanel" ...>
<Grid x:Name="LayoutRoot">
<TextBlock x:Name="txtTitle" />
<!-- other stuff here -->
</Grid>
</UserControl>
MyPanel.cs: -
public partial class MyPanel : UserControl
{
// constructor stuff here.
public string Title
{
get { return txtTitle.Text; }
set { txtTitle.Text = value; }
}
}
还有其他“聪明”的解决方案,但这足以满足这一要求。