2 lcj1105 lcj1105 于 2013.08.16 21:32 提问

关于C#菜单程序的问题
c#

这里是一个带历史信息的菜单的程序,程序里面获取索引值为什么要 -2 ?
另外,能简约的介绍下DropDownItems的作用么?
小弟不才,望大神指导

private void Form1_Load(object sender, EventArgs e)
        {
            if (File.Exists("Menu.ini"))//判断文件是否存在
            {
                StreamReader sr = new StreamReader("Menu.ini");//创建文件流
                int i = this.文件ToolStripMenuItem.DropDownItems.Count - 2;//获取索引项
                while (sr.Peek() >= 0)//读取文件流
                {
                    //将读取的信息创建菜单项
                    ToolStripMenuItem menuitem = new ToolStripMenuItem(sr.ReadLine());
                    //将菜单项添加到指定位置
                    this.文件ToolStripMenuItem.DropDownItems.Insert(i, menuitem);
                    i++;

                }
                sr.Close();//关闭流
            }
        }

        private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            openFileDialog1.FileName = "";
            this.openFileDialog1.ShowDialog();//打开对话框
            StreamWriter s = new StreamWriter("Menu.ini", true);//创建流
            s.WriteLine(openFileDialog1.FileName);//流写入文件
            s.Flush();
            s.Close();

}

1个回答

zhu_mingcheng
zhu_mingcheng   2013.08.18 21:37

索引是从0开始的,count计算数字是从1开始的。估计Item中最后还有一个估计是根Item或者“请选择”之类的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!