我用ContextMenuStrip创建了一个表单。我按照以下方式使用文本字段设置其快捷方式:“& File”。但是,当我通过鼠标右键单击打开此上下文菜单时,仅当我同时按住Alt按钮时才会显示下划线。有没有办法在不按住Alt键的情况下在鼠标点击时显示下划线?
答案 0 :(得分:2)
您可以通过自定义HidePrefix
修改文字呈现行为(ToolStripSystemRenderer
):
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
contextMenuStrip1.Renderer = new AccessKeyMenuStripRenderer();
}
private void Form1_Click(object sender, EventArgs e)
{
contextMenuStrip1.Show(Cursor.Position);
}
}
class AccessKeyMenuStripRenderer : ToolStripSystemRenderer
{
protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e)
{
e.TextFormat &= ~TextFormatFlags.HidePrefix;
base.OnRenderItemText(e);
}
}
}