通过XAML访问用户控件的属性



我创建了一个用户控件,它是一个分配了TextBlockImageButton

<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,但这并没有帮助。

您应该在用户控制类中添加一个公共属性

public partial class ucDropDownButton
{
   public string MyText
   {
       get { return txtButtonContent.Text }
      set { txtButtonContent.Text = value }
   }
 // Rest of the class
} 

MyText现在可以从XAML 设置

最新更新