我创建了一个Button
的用户控件,其中分配了TextBlock
和Image
:
<UserControl x:Class="App_Designer.Resources.ucDropDownButton" ... />
<StackPanel HorizontalAlignment="Left" Orientation="Horizontal" VerticalAlignment="Top" Margin="10">
<Button x:Name="ButtonDropDown">
<StackPanel Orientation="Horizontal">
<Image Name="imgButton" Margin="0,0,5,0" VerticalAlignment="Center" x:FieldModifier="public"></Image>
<TextBlock Name="txtButtonContent" x:FieldModifier="public"></TextBlock>
</StackPanel>
</Button>
如果我在我的页面上引用它:
<local:ucDropDownButton x:Name="btnAddImportTemplate" />
如何在XAML中设置txtButtonContent TextBlock
的内容?我以为我能写:
<local:ucDropDownButton x:Name="btnAddImportTemplate" txtButtonContent.Text="whatever" />
我知道我可以在btnAddImportTemplate.txtButtonContent.Text = "whatever";
的代码中执行此操作
但我希望能够在XAML中设置它。我在研究了这个问题后添加了x:FieldModifier,但这没有帮助。
答案 0 :(得分:2)
您应该将公共属性添加到User Control类
public partial class ucDropDownButton
{
public string MyText
{
get { return txtButtonContent.Text }
set { txtButtonContent.Text = value }
}
// Rest of the class
}
现在可以从XAML设置MyText