2010-08-13 63 views
0

我有一個相當簡單的問題,但我無法得到我的頭... 我有一個繼承自UserControl的類。它具有類型ColorAxisColor DependencyProperty。在類的XAML結構中,我有<ms3DTools:ScreenSpaceLines3D Thickness="2" Points="0,0,0 100,0,0" Color="{Binding Mode=OneWay, Path=AxisColor}"。 綁定不起作用。 我在做什麼錯?簡單的綁定問題

+1

你正確設置你的數據上下文嗎? – jsmith 2010-08-13 15:59:52

+0

我該怎麼做? – licensedlice 2010-08-13 16:01:12

回答

0

如果您有一個UserControl需要從類中獲取Property AxisColor,則需要將該UserControl的DataContext設置爲包含AxisColor的類。

myUserControl.DataContext = myClassInstance; 

否則,您的用戶控件不知道從哪裏抓取屬性。

+0

謝謝,這工作... 還有一個問題:在XAML中是否有這樣的等價物? – licensedlice 2010-08-13 16:38:37

+0

我想我很困惑。我以爲你說'AxisColor'屬性是在UserControl類本身上定義的。你只是做'myUserControl.DataContext = myUserControl;'? – 2010-08-13 16:47:34

+0

或更簡單:MyUserControl.DataContext = this; ? – 2010-08-13 16:48:13

0

您可能想要將RelativeSource={RelativeSource Self}添加到綁定表達式中。否則,您將綁定到DataContext屬性。

+0

只是試了一下,但它不工作... – licensedlice 2010-08-13 16:07:44

0

如果你想要UI綁定,那麼你必須指定ElementName,更多選項here。如果你想要數據綁定,那麼確保你有正確的DataContext設置。