假設我有一個像下面這樣的用戶控件,我將如何將某些東西綁定到控件外部的「G1」網格的ActualWidth
?綁定到用戶控件中的元素
<UserControl x:Class="Blah">
<WrapPanel>
<Grid x:Name="G1">
...
</Grid>
<Grid>
...
</Grid>
</WrapPanel>
</UserControl>
假設我有一個像下面這樣的用戶控件,我將如何將某些東西綁定到控件外部的「G1」網格的ActualWidth
?綁定到用戶控件中的元素
<UserControl x:Class="Blah">
<WrapPanel>
<Grid x:Name="G1">
...
</Grid>
<Grid>
...
</Grid>
</WrapPanel>
</UserControl>
如果你希望綁定到您使用此用戶控制的外部控制,聲明DependencyProperty
你的用戶控件的代碼後面,然後綁定G1到該屬性。 並將外部控件的屬性綁定到UserControl的DependencyProperty
。 它就像一個間接的2級。
中使用控件,但是ActualWidth不會以這種方式綁定? – MJS 2008-11-23 21:24:16
如果你的意思的控制之外,而不是作爲控制的內容,你可以像這樣綁定使用ElementName
:
{Binding ElementName=G1, Path=ActualWidth}
如果你的意思是在另一個XAML文件中的控制範圍之外,那麼你就可以嘗試,如果你的控制是在其他控制的範圍內使用Path屬性:
{Binding ElementName=ParentControl, Path=G1.ActualWidth}
不過,我會建議對這個設計,因爲你可能會改變G1一天的名字,你永遠不會知道的任何可能破壞的綁定。
你是什麼意思'在G1外側 - 從同一個XAML文件或代碼後面? – 2008-11-21 02:48:40
如果您在不同的XAML文件 – MJS 2008-11-23 22:07:10