在WPF UserControl上应用样式的问题
我有一个用户控件,我想在其他项目中使用它。 当我直接为其属性设置一些值时没有问题:
...
但我无法应用它的风格。 我试过了:
...
我哪里错了? -谢谢
使用亲爱的@Mario Vernari的指示,我发现问题是由于我用来创建UserControl的糟糕策略造成的。 我想创建一个能够容纳其他一些的UserControl。 所以我试过这个:
...
其中DP1
是Brush
类型的依赖属性。 通过这种方式创建的UserControl可以直接设置其属性(如DP1
)。 当@Mario告诉我时,这绝对不是真正的方式:
…当您使用UserControl时,这意味着您已经知道其布局,并且无需进一步设置控件的样式。 你正在同时定义它的风格两次因此导致碰撞……
他补充说:
相反,你应该使用CustomControl; 在Themes文件夹中定义默认样式(如果您拥有常规Visual Studio,则会自动生成)。 之后,您可以覆盖自己应用中的默认样式。 以与普通基类及其派生类似的方式。
请关注: http : //www.codeproject.com/KB/WPF/WPFCustomControl.aspx …
显然,在这种情况下,我们需要从ContentControl
类(而不是Control
类)派生我们的无形控件。 你可以看看这个和这个来掌握细节。
在这里,我再次感谢@Mario。 ;)
您正在给Style="{StaticResource ResourceKey=MyUserControlStyle}"
。
它只是 – Style="{StaticResource MyUserControlStyle}"
。
上述就是C#学习教程:在WPF UserControl上应用样式的问题分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1001859.html