2012-01-30 14 views
0

对WPF来说不是什么新东西,所以我确信这很简单;对于某个类型/ s的每个控件,我想将属性设置为相同的值。该属性是telerik:Theming.Theme,我想对所有telerik:控件应用相同的值。如果没有办法做到这一点,那么我如何使用资源来定义这个值并引用控件中的资源?更改(或集中)WPF窗口上所有控件的属性值

谢谢。

回答

1

您可以覆盖任何依赖项属性的默认值在应用程序的初始化代码特定的控制类型(准确地说是一个特定的类型依赖的对象)由DependencyProperty.OverrideMetadata(例如,您的主窗口的静态构造函数):

Telerik.Windows.Controls.Theming.ThemeProperty.OverrideMetadata(
    typeof(SomeControlClass), 
    new PropertyMetadata(SomeDefaultValue)); 

其中SomeControlClass是您希望为Theme属性提供新默认值的(基本)类,SomeDefaultValue是新的默认值。

还要注意,Theming.ThemeProperty似乎已经过时,将被替换为StyleManager.ThemeProperty

+0

非常感谢,这个排序。 – 2012-01-30 12:30:13

1

你并不需要定义一个资源的约束力,但你需要在ModelView定义财产并将其绑定到每个控件。

+0

如何在ModelView上定义属性? – 2012-01-30 11:58:07

+1

@DanielMcNulty:这是一个基本上简单的属性,当它通知绑定WPF时,它被改变。 [Here](http://blogs.u2u.be/peter/post/2010/03/20/Using-Model-View-ViewModel-with-WPF.aspx)是如何定义和使用它们的好例子。 – Tigran 2012-01-30 12:20:50

相关问题