我想在Windows窗体应用程序的按钮文本中显示&&
,但是显示的按钮仅显示文本&
,并带有单个字符。
// this is how the button is declared and formatted
Button si = new Button();
si.Width = 25;
si.Height = 25;
this.Controls.Add(si);
si.bringToFront();
si.Text = "&&";
si.Font = new Font("Arial", 4, FontStyle.Regular) // as you can see, I made the font so small, in order to make sure the text fits the size of the button
si.Top = 10;
si.Left = 10;
当我创建一个MessageBox时,该消息框告诉按钮中包含哪些文本。Text,它显示&&
(所需结果)。但是,在Windows窗体上找到的按钮仅包含一个字符:&
。
我已经尝试过的一些方法如下所示:
// 1
si.Text = "&" + "&";
// 2
char c = (char)38;
si.Text = c.ToString() + c.ToString();
// 3
si.Text = "&" + (char)38;
我已经尝试过增大按钮的大小,但是仍然无法正常工作,字体不是问题,在这种情况下,可以肯定的是,文本适合按钮的大小。我认为值得一提的是,我尝试提供按钮值的文本,例如&x
(si.Text = "&x")
,而在按钮文本中唯一可以找到的字符是x
。 / p>
答案 0 :(得分:7)
您可以通过将按钮的UseMnemonic
属性设置为false
来解决此问题。
UseMnemonic
属性获取或设置一个值,该值指示是否将前面跟符号(&
)的第一个字符用作控件的助记键。因此,将其设置为false
将使您可以使用&
字符而不会转义其后的字符。
答案 1 :(得分:5)