c# - 如何阻止 ContextMenuStrip 中的项目特别处理&符号?

标签 c# winforms contextmenustrip

我有一个 ContextMenuStrip,它显示可以由用户命名的项目;允许用户指定包含与符号的项目名称。当显示 ContextMenuStrip 时,项目将 & 符号视为转义序列,并在下一个字符下划线。

在设置项目的 Text 成员之前,我可以将所有 & 符号加倍,但该成员在代码中的其他地方使用,因此如果可能,我想阻止 ContextMenuStrip 专门处理 & 符号。有没有办法关闭这种行为?

最佳答案

使用 && 显示单个 &
编辑: 抱歉,我错过了您问题的第二部分:(

当你设置文本时,你总是可以在文本上使用 string.Replace("&", "&&") ,但这看起来很困惑。

另一种替代方法是从 ToolStripMenuItem 继承并覆盖 Text 属性集以将 & 替换为 && 。那会好一点,因为它会将代码保存在一个地方。

关于c# - 如何阻止 ContextMenuStrip 中的项目特别处理&符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1119478/

相关文章:

c# - 以编程方式调用 WinForms contextmenustrip

c# - 如何从不在默认 DBO 架构中的 SQL Server 数据库表中读取数据

c# - 跨应用程序相同 GUID 的影响

winforms - NumericUpDown ValueChanged 事件不适用于输入值

vb.net - 上下文菜单 strip 宽度

c# - 如何将 ContextMenuStrip 添加到 ToolStripButton?

c# - 在 .NET Core 环境变量中表示字典 <string, string>

属性的 C# XML 序列化

Winforms DataBind 到控件的可见属性

c# - 从另一个 DataContext 加载?