Datagridview的某些属性again

private void button1_Click(object sender, EventArgs e) //这里是不用泛型集合的情况,用的是Datatable
        {
            SqlConnection conn = new SqlConnection("server=.;database=Cml;user=sa;pwd=123");
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "select * from student";
            conn.Open();
            SqlDataReader dr= cmd.ExecuteReader();
            DataTable dt = new DataTable();
            if(dr.HasRows)
            {
                //开始添加列
                for (int i = 0; i < dr.FieldCount; i++) //dr.FieldCount 表里的列数
                {
                    dt.Columns.Add(dr.GetName(i)); //一列一列的添加,for 循环循环的是确定了某一行之后每一列
                }

                //开始添加行
                while (dr.Read()) //while循环的是每一行的数据,一行一行的循环
                {
                    DataRow dtw = dt.NewRow(); //造一个新行
                    //下面开始给新行添加内容
                    for (int i = 0; i < dr.FieldCount; i++)
                    {
                        dtw[i] = dr[i];  //开始给确定了某一行的每一列依次赋值,for循环循环一次赋一次列值
                    }   
                    //将while循环完事后的每一行的内容全部增加到dt里面
                         dt.Rows.Add(dtw);
                }
            }
            //现在Datatable里面已经有内容了,然后datagridview1的数据源便是dt
            dataGridView1.DataSource = dt;
            cmd.Dispose();
            conn.Close();
        }

 

 

 

 

 /////////

 private void button2_Click(object sender, EventArgs e) //cells 单元格
        {   if(dataGridView1.SelectedCells.Count>0)
         {
            MessageBox.Show(dataGridView1.SelectedCells[0].Value.ToString());
             //SelectedCells[0] 中括号里面是0的话,必须得选择至少1个单元格,显示倒数第一个选中的
             //SelectedCells[1] 中括号里面是1的话,必须得选择至少2个单元格,显示倒数第二个选中的
             //SelectedCells[2] 中括号里面是2的话,必须得选择至少3个单元格,显示倒数第三个选中的

         }
        }

 

 

 

////

 private void button2_Click(object sender, EventArgs e) //cells 单元格
        {   if(dataGridView1.SelectedCells.Count>0)
         {
            MessageBox.Show(dataGridView1.SelectedCells[1].Value.ToString());
             //SelectedCells[0] 中括号里面是0的话,必须得选择至少1个单元格,显示倒数第一个选中的
             //SelectedCells[1] 中括号里面是1的话,必须得选择至少2个单元格,显示倒数第二个选中的
             //SelectedCells[2] 中括号里面是2的话,必须得选择至少3个单元格,显示倒数第三个选中的

         }
        }    这里是先选中的康议方,在选中的侯玉芳

 

 

 

////

 private void button2_Click(object sender, EventArgs e) //cells 单元格
        {   if(dataGridView1.SelectedCells.Count>0)
         {
            MessageBox.Show(dataGridView1.SelectedCells[2].Value.ToString());
             //SelectedCells[0] 中括号里面是0的话,必须得选择至少1个单元格,显示倒数第一个选中的
             //SelectedCells[1] 中括号里面是1的话,必须得选择至少2个单元格,显示倒数第二个选中的
             //SelectedCells[2] 中括号里面是2的话,必须得选择至少3个单元格,显示倒数第三个选中的

         }
        }

 

 

 

 

 

//////

 //Selectionmode 指示如何选中单元格  fullrowselect再选中其第一项时,其子项也会突出显示
        private void button3_Click(object sender, EventArgs e) //row 在使用这个的时候,必须将Selectionmode改为fullrowselect
        {
            MessageBox.Show(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());
            //SelectedRows[0] 必须选择最少1行 ,显示倒数第一个选中的    cells[0] 为这一行的第一列的值
            //SelectedRows[1] 必须选中最少2行 ,显示倒数第二个选中的   cells[1] 为这一行的第二列的值
        }

 

 

 

////

 //Selectionmode 指示如何选中单元格  fullrowselect再选中其第一项时,其子项也会突出显示
        private void button3_Click(object sender, EventArgs e) //row 在使用这个的时候,必须将Selectionmode改为fullrowselect
        {
            MessageBox.Show(dataGridView1.SelectedRows[0].Cells[1].Value.ToString());
            //SelectedRows[0] 必须选择最少1行 ,显示倒数第一个选中的    cells[0] 为这一行的第一列的值
            //SelectedRows[1] 必须选中最少2行 ,显示倒数第二个选中的   cells[1] 为这一行的第二列的值
        }

 

 

 

 

  private void button3_Click(object sender, EventArgs e) //row 在使用这个的时候,必须将Selectionmode改为fullrowselect
        {
            MessageBox.Show(dataGridView1.SelectedRows[1].Cells[0].Value.ToString());
            //SelectedRows[0] 必须选择最少1行 ,显示倒数第一个选中的    cells[0] 为这一行的第一列的值
            //SelectedRows[1] 必须选中最少2行 ,显示倒数第二个选中的   cells[1] 为这一行的第二列的值
        }

 

 

 

 

/////

 private void button4_Click(object sender, EventArgs e) //将选中的某行转换为该行所对应的对象
        {
           //bianliang x=(bianliang)dataGridView1.SelectedRows[0].DataBoundItem; //将选中的某一行直接转化为对象,之后可以调用对象的任意属性
        }

 

posted @ 2015-06-10 11:54  XCml  阅读(268)  评论(0编辑  收藏  举报