dataGridView没有绑定数据库时的简单应用学习小结

来源:互联网 发布:上财和复旦的差距 知乎 编辑:程序博客网 时间:2024/04/23 17:32


        private void 添加端口ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DataGridViewRow dr = new DataGridViewRow();

            foreach (DataGridViewColumn c in this.dataGridView1.Columns)
            {

                dr.Cells.Add(c.CellTemplate.Clone() as DataGridViewCell);  //给行添加单元格
            }

            dr.Cells[0].Value = "X";

            dr.Cells[1].Value = " 192.168.0.x";                              //IP地址
           // dr.Cells[2].Value = SS1[i + 1, 2];                                   //端口类型
            dr.Cells[3].Value =  1;                                         //VLAN
            //dr.Cells[4].Value = SS1[i + 1, 4];                                     //类别
            dr.Cells[5].Value = "这个端口下面链接到X栋X楼X层XX交换机"; 

            this.dataGridView1.Rows.Add(dr);

            int index = this.dataGridView1.Rows.Count - 2;

 

        }

        private void 删除端口ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Validate();
            this.dataGridView1.EndEdit();
            dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Selected = true;//在DataGridview控件中,默认单击一个单元格通常是选中单元格,而不是选中单元格所在整行。为了实现这个功能,可以在单元格的单击事件或鼠标的按下、抬起事件中添另以下代码:

            foreach (DataGridViewRow r in dataGridView1.SelectedRows)//选中的行
            {
                this.dataGridView1.Rows.Remove(r);
            }

            //this.xGTPTableAdapter.Update(this.wZ_DBDataSet.XGTP);


        }

        private void 属性查看ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            MessageBox.Show("!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Question);
        }

        private void dataGridView1_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right) //判断是不是右键
            {
                Control control = new Control();

                Point ClickPoint = new Point(e.X, e.Y);
                control.GetChildAtPoint(ClickPoint);

                if (dataGridView1.HitTest(e.X, e.Y).RowIndex >= 0 && dataGridView1.HitTest(e.X, e.Y).ColumnIndex >= 0)//判断你点的是不是一个信息行里
                {
                    dataGridView1.CurrentCell = dataGridView1.Rows[dataGridView1.HitTest(e.X, e.Y).RowIndex].Cells[dataGridView1.HitTest(e.X, e.Y).ColumnIndex];
                    ContextMenu con = new ContextMenu();
                    MenuItem menuAddknowledge = new MenuItem("添加端口");
                    MenuItem menuLine1 = new MenuItem("-");
                    MenuItem menuUpdateknowledge = new MenuItem("删除端口");
                    MenuItem menuLine2 = new MenuItem("-");
                    MenuItem menuDeleteknowledge = new MenuItem("属性查看");


                    menuAddknowledge.Click += new EventHandler(添加端口ToolStripMenuItem_Click);
                    menuUpdateknowledge.Click += new EventHandler(删除端口ToolStripMenuItem_Click);
                    menuDeleteknowledge.Click += new EventHandler(属性查看ToolStripMenuItem_Click);

                    con.MenuItems.Add(menuAddknowledge);
                    con.MenuItems.Add(menuLine1);
                    con.MenuItems.Add(menuUpdateknowledge);
                    con.MenuItems.Add(menuLine2);
                    con.MenuItems.Add(menuDeleteknowledge);

                    this.dataGridView1.ContextMenu = con;
                    con.Show(dataGridView1, new Point(e.X + 10, e.Y));
                }
            }
        }