簡體   English   中英

WPF將usercontrol的屬性綁定到parent的屬性

[英]WPF bind usercontrol's property to parent's property

我創建了一個usercontrol,它有2個依賴項屬性。 我想將這些依賴項屬性綁定到mainViewModel的屬性,這樣每當用戶控件中的某些內容發生更改時,父屬性的屬性就會更新。

我嘗試過,正常綁定但是沒有用。 如何將用戶控件的DP綁定到父級的屬性。

我試過這個:UC:

<TextBox Name="TextBox" Text="{Binding ElementName=UCName, Path=DP1, Mode=TwoWay}"/>

主窗口:

<UCName:UCName Width="330" CredentialName="{Binding Path=DP1, Mode=TwoWay}"></UCName:UCName>

謝謝

要綁定到父級屬性,您應該在Binding中使用RelativeSource。 像這樣:

<TextBox Name="TextBox" Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UCName:UCName}}, Path=DP1, Mode=TwoWay}"/>

詳細信息: https//msdn.microsoft.com/en-us/library/ms743599(v = vs.100).aspx

ps:不要忘記define namespace UCName。

[編輯]將URL更改為.NET 4版本的文檔。

像這樣的東西:

<MainWindow DataContext="mainViewModel">

 <local:TestControl ucDependProp="{Binding viewModelProp}/>

</MainWindow>


className: TestControl.xaml
<UserControl Name="thisControl">
<TextBox Text="{Binding ElementName=thisControl, Path=ucDependProp}/>
</UserControl>

用戶控件不應該知道父視圖模型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM