【发布时间】:2017-11-22 16:06:31
【问题描述】:
在我的应用程序中有一个自定义触摸屏键盘是根据以下内容构建的:https://www.codeproject.com/Articles/32568/A-Touch-Screen-Keyboard-Control-in-WPF。 我还有一个包含所有样式和模板的 ResourceDictionary。在 TextBox 样式中,我可以设置键盘的 ON/OFF:
<Style TargetType="{x:Type TextBox}">
<Setter Property="FontSize" Value="14" />
<Setter Property="Padding" Value="4" />
<Setter Property="k:TouchScreenKeyboard.TouchScreenKeyboard" Value="True"/>
</Style>
我希望用户能够从 UI 中打开或关闭它,但不知道如何从后面的代码中访问此属性。我想在不命名样式的情况下制作它,因为它在整个应用程序中非常常用。 我试过这个,但(毫不奇怪)得到 ArgumentNotFoundException:
Style s = Application.Current.FindResource("defTextBox") as Style;
s.RegisterName("Keyboard.TouchScreenKeyboard.TouchScreenKeyBoard",false);
任何帮助将不胜感激!
【问题讨论】:
-
你想做什么?将样式的定义应用于 TextBoxes 后更改样式的定义无效。
标签: c# wpf resourcedictionary