使用下划线助记符时,WPF 按钮内容为空

问题描述

我们在使用 Caliburn.Micro 作为 MVVM 框架的 WPF 应用程序中遇到了一些奇怪的问题。我们的对话窗口中有一个简单的按钮,它映射到视图模型中的一个属性

<Button x:Name="CloseButton"
        Margin="6"
        MinWidth="85"
        Width="Auto"
        Style="{DynamicResource StandardButton}"
        Content="{Binding CloseButtonText}"

我们在代码隐藏中设置了它。

public string CloseButtonText => "_Close"; 

"_" 用于助记符,因此用户可以使用 ALT + C 快捷键(http://www.charlespetzold.com/blog/2006/01/061004.html)单击按钮。 问题是有时当我们第一次打开对话框时,按钮是空的。第二次成功绑定文本。 当我从文本中删除下划线时,问题不会发生。

public string CloseButtonText => "Close"; 

如果我直接在 XAML 代码中写入“_Close”,也不会发生此问题。但是,我需要有一个属性才能从其他地方更改它。 我试图拥有一个简单的属性并将初始化移动到构造函数/OnActivate 方法,但没有运气。在这种情况下也发生了同样的问题。

有人知道为什么会这样吗?为什么它只在使用“_”时发生?有什么想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...