当前位置: 首页 > 编程语言 > C#

在样式的代码背后的BasedOn =“{StaticResource {x:Type TextBox}}”分享

时间:2023-04-10 18:59:14 C#

C#学习教程:样式代码中BasedOn="{StaticResource{x:TypeTextBox}}"设置如下?我正在使用App.xaml中合并的主题。它适用于所有控件,但是当我为某些东西定义样式时,比如TextBox,除非我像上面那样使用BasedOn,否则主题样式不会被拾取,而是我得到默认的TextBox样式。现在我在后面的代码中创建了一个DataGridTextColumn,我无法让BasedOn部分用于EditingElementStyleStyleeditingStyle=newStyle(typeof(TextBox));editingStyle.BasedOn=...?;有什么建议么?另外,有没有办法在没有BasedOn的情况下获取主题样式而不是使用默认样式?谢谢试试这个:editingStyle.BasedOn=(Style)FindResource(typeof(TextBox))我不知道如何在不指定BasedOn的情况下应用主题样式。如果有这样的方法,我也想知道它......这应该有效:StylebaseStyle=newStyle(typeof(TextBox));样式editingStyle=newStyle(typeof(TextBox));editingStyle.BasedOn=baseStyle;在构造函数中执行此操作:StyleeditingStyle=newStyle(typeof(TextBox),baseStyle);我喜欢PavloGlazkov的回答,但它没有编译。FindResource是FrameworkElement的(非静态)成员。需要识别搜索请求的上下文。所以我推荐一下:以上就是C#学习教程:BasedOn="{StaticResource{x:TypeTextBox}}"样式代码后面分享所有内容,如果对大家有用还需要进一步了解C#学习教程,希望大家多多关注——style.BasedOn=(Style)frameworkElement.FindResource(typeof(TextBox));本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: