2009-11-13 37 views
2

任何人都可以幫助我通過代碼獲取WPF中的DynamicResource綁定嗎?在WPF中獲取DynamicResource綁定

我已結合樣可循,

TextBlock的背景= {DynamicResource ColorA} NAME = 「TB」 在XAML。

我需要得到 - TB的背景綁定到「ColorA」。 如何通過編碼訪問WPF中的DynamicResource綁定表達式。 當我嘗試獲得TB.Background,它是白色(#FFFFF ..)或者如果我已經給予了價值 將會給出的Resorce鍵「ColorA」。 但我想得到這個綁定表達式。 提前感謝您的幫助。


我想我的問題並不清楚。 我想通過代碼獲取Xaml中的「TB」的資源綁定。 但是沒有任何TB.GetResourceReference。我想要一些這樣的想法。 那裏綁定表達式保存在WPF中。我需要得到TB的BackgroundProperty是 綁定到哪個(回答「ColorA」)鍵? 非常感謝突然的迴應。

回答

3

可以使用FrameworkElement.SetResourceReference方法:

MSDN:http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.setresourcereference.aspx

提供的XAML中有這樣的:

TB.SetResourceReference(BackgroundProperty, "ColorA"); 

<TextBlock x:Name="TB"> 

可以在後面的代碼寫

+1

這是關於如何在代碼中創建DynamicResource綁定的一個很好的答案。不幸的是,這不是OP的問題的答案,但寫得很好,可以幫助其他人到這裏尋找這個答案。 +1 – 2009-11-14 17:57:47

1

您可以使用這個:

YourControl.Style = this.FindResource(NameOfYourStyleForThisControl) as Style;