2

任何人都可以帮助我通过代码在 WPF 中获取 DynamicResource Binding 吗?

我已经设置了绑定,如下所示,

Xaml 中的 TextBlock Background={DynamicResource ColorA} Name="TB"。

我需要得到 - TB 的背景绑定到“ColorA”。如何通过编码访问 WPF 中的此 DynamicResource 绑定表达式。当我尝试获取 TB.Background 时,它是白色的(#FFFFF ..),或者如果我已经为将给出的 Resorce 键“ColorA”提供了值。但我想得到这个绑定表达式。提前感谢您的帮助。


我认为我的问题不清楚。我想通过代码获取 Xaml 中对“TB”所做的资源绑定。但不是任何 TB.GetResourceReference。我想要一些这样的想法。该 Binding 表达式保存在 WPF 中的位置。我需要获取 TB 的 BackgroundProperty 绑定到哪个(回答“ColorA”)键?非常感谢您的突然回复。

4

2 回答 2

3

您可以使用 FrameworkElement.SetResourceReference 方法:

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

如果你的 xaml 有这个:

<TextBlock x:Name="TB">

你可以在后面的代码中这样写:

TB.SetResourceReference(BackgroundProperty, "ColorA");
于 2009-11-13T17:28:06.370 回答
1

你可以使用这个:

YourControl.Style = this.FindResource(NameOfYourStyleForThisControl) as Style;
于 2011-11-30T13:55:39.243 回答