C#中菜单栏快捷键的大小写问题
我用C#写了个记事本,功能合外观上都和win的记事本差不多了,但是有一个小问题:
就是系统的记事本按下快捷键时无论大小写,都一样。。而我做的只能用大写的快捷键。。求助大虾们帮助能否实现跟系统的记事本一样的快捷键。无论我按大写还是小写的都可以?

解决方案 »

  1.   

    ...你用的什么菜单?
    MenuStrip?不区分大小写....
      

  2.   


    惭愧惭愧。
    刚刚发现用的是toolbar 真是菜到外婆家了。。谢谢。。这20分就是你们的了。我另外加分加分:我还有个问题
    就是当记事本关闭的时候,程序判断输入的文本是否保存过了或者说打开的文本是否已经被修改过了没有保存
    这时就弹出消息框提示用户是否要保存:
    点“是”就弹出 选择路径保存文件的框 保存完毕就关闭记事本,,取消的话则不关闭
    点“否”就直接关闭
    点“取消”则不关闭反正是跟系统记事本一样的动作
    我在窗体的关闭事件中这样的写的:
    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
            {
                if (this.richTextBox1.Text != "" && this.richTextBox1.ReadOnly ==false)
                {
                DialogResult a=
                    MessageBox.Show("内容已经修改 ! 是否要保存 ?", "关闭提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                if (a == DialogResult.Yes)
                {
                    byte[] content = new UTF8Encoding(true).GetBytes(this.richTextBox1.Text);
                    try
                    {
                        SaveFileDialog save = new SaveFileDialog();
                        save.Filter = @"(文本类型).txt|*.txt|(批处理类型).bat|*.bat|(.NET类文件).cs|*.cs|(JAVA类文件).java|*.java|(Word文档).wps|*.wps|(写字板).rtf|*.rtf";                    if (save.ShowDialog() == DialogResult.OK && save.FileName.Length > 0)
                        {
                            fs = File.Create(save.FileName);
                            fs.Write(content, 0, content.Length);
                            fs.Flush();
                            this.Text = save.FileName;
                        }
                    }
                    catch
                    {
                        MessageBox.Show("写入文件时出错", "错误", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Warning);
                    }
                    finally
                    {
                        if (fs != null)
                            fs.Close();
                    }
                }
                else if (a == DialogResult.No)
                {
                    MessageBox.Show("否按时打发似的发射的发生地方");
                }
                else
                {
                    ///this.Visible=fale;
                    this.ShowDialog();
                   //点“取消”时总是由错
                }
                }
            }
    //////就是这个“取消“老是搞不定。。高手们  支支招吧   
    点“取消”时总是由错