我有一个单独的字符串常量,我必须在几个不同的XAML布局中重复使用,所以我不想复制它,而是将它绑定到一个常量.
我有一个在C#中定义字符串的类:
public static class StringConstants
{
public static string MyString { get { return "SomeConstant"; } }
}
Run Code Online (Sandbox Code Playgroud)
我希望能够通过以下方式通过XAML设置值:
<Label Content="{Binding local:StringConstants.MyString}"/>
Run Code Online (Sandbox Code Playgroud)
这可以实现吗?我已经搜索了一些示例,但我只发现了代码隐藏中涉及一些修改的示例,我想知道是否有一个更简单的XAML解决方案,如果我知道我只需要设置一次基于值在一个永远不会改变的字符串值上.
我有一个WPF RichTextBox控件,RichTextBox除了用户无法编辑文本并且插入符号不可见外,我希望在各方面都像普通一样.我遇到的问题是,当我改变IsReadOnly时False,RichTextBox停止对击键做出反应.我希望它能正常响应Home,End,PgUp,PgDn,Up,Down等按键.该文件没有提到此行为.
<RichTextBox
IsReadOnly="True"
ScrollViewer.VerticalScrollBarVisibility="Visible"
Width="65" Height="20">
<FlowDocument>
<Paragraph>
Line 1
Line 2
Line 3
</Paragraph>
</FlowDocument>
</RichTextBox>
Run Code Online (Sandbox Code Playgroud)
我已经尝试添加一个OnKeyDown事件处理程序,但它不会触发.我已经在Snoop中观看了事件,因为我用RichTextBox键盘焦点按键,并且Snoop中没有显示任何触发事件.我已经尝试IsDocumentEnabled明确设置True,但这也没有效果.我试过RichTextBox用a 包裹ScrollViewer,但这也没有效果.
对我怎么能保持这样的任何建议RichTextBox的IsReadOnly=True,但得到的预期按键的行为RichTextBox?