[英]Create custom control with some property set through xaml
我創建了一個自UserControl派生的自定義控件,它具有一個文本塊,一個文本框和2個按鈕,稱為PathMng。
<Grid>
<!-- some other stuff -->
<TextBlock Name="PathName">Name</TextBlock>
</Grid>
我試圖通過調用此控件的外部xaml設置TextBlock的文本
<Grid>
<local:PathMng>NameHere</local:PathMng>
</Grid>
但是我不明白該如何將文本“ NameHere”綁定到TextBlock。
我嘗試用“自定義xaml”,“模板xaml”或也許太多的通用字詞進行搜索,但找不到所需的內容
預先感謝您的任何幫助
首先,為您簡化設置,請使用例如:
<local:PathMng MyText="NameHere"/>
現在,在您的用戶控件背后的代碼中,創建一個依賴項屬性:
public string MyText
{
get { return (string)GetValue(MyTextProperty); }
set { SetValue(MyTextProperty, value); }
}
public static readonly DependencyProperty MyTextProperty =
DependencyProperty.Register("MyText", typeof(string), typeof(UserContrrol1), new PropertyMetadata(null));
最后,在UserControl1 XAML中,將TextBox的Text屬性綁定到此DP:
<TextBox Text="{Binding MyText, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:UserControl1}}}" />
所有這些都假定您的用戶控件稱為UserControl1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.