首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

datagridview 数据显示的有关问题

2013-06-26 
datagridview 数据显示的问题我在datagridview 中做了一个查询数据的功能 用他来显示出来 但每次查询都会

datagridview 数据显示的问题
datagridview 数据显示的有关问题

我在datagridview 中做了一个查询数据的功能 用他来显示出来 但每次查询都会在原来哪一行中增加一行 如图片所示 代码如下

//绑定数据的方法
 private void GetDB(string str)
        {
            //SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=StuManage;Integrated Security=True");
            //con.Open();
            //SqlDataAdapter sdr = new SqlDataAdapter();
            //SqlCommand cmd = new SqlCommand(str, con);
            //sdr.SelectCommand = cmd;
            //DataSet ds = new DataSet();
            con = new SqlConnection("Data Source=.;Initial Catalog=StuManage;Integrated Security=True");
            con.Open();
            sdr = new SqlDataAdapter();
            sdb = new SqlCommandBuilder(sdr);
            cmd = new SqlCommand(str,con);
            sdr.SelectCommand = cmd;
            ds = new DataSet();
            sdr.Fill(ds);
            //向gridview中添加列
            DataGridViewTextBoxColumn col_txb_Id = new DataGridViewTextBoxColumn();
            col_txb_Id.HeaderText = "课程编号";
            col_txb_Id.DataPropertyName = "cno";
            dataGridView1.Columns.Add(col_txb_Id);

            DataGridViewTextBoxColumn col_txb_Name = new DataGridViewTextBoxColumn();
            col_txb_Name.HeaderText = "课程名";
            col_txb_Name.DataPropertyName = "cname";
            dataGridView1.Columns.Add(col_txb_Name);

            DataGridViewTextBoxColumn col_txb_Score = new DataGridViewTextBoxColumn();
            col_txb_Score.HeaderText = "课程学分";
            col_txb_Score.DataPropertyName = "ccredit";
            dataGridView1.Columns.Add(col_txb_Score);

            DataGridViewButtonColumn col_btn_state = new DataGridViewButtonColumn();
            col_btn_state.HeaderText = "删除";


            col_btn_state.Text = "删除";
            col_btn_state.UseColumnTextForButtonValue = true;
            dataGridView1.Columns.Add(col_btn_state);

            DataGridViewButtonColumn col_btn_update = new DataGridViewButtonColumn();
            col_btn_update.HeaderText = "修改";
            col_btn_update.Text = "修改";
            col_btn_update.UseColumnTextForButtonValue = true;
            dataGridView1.Columns.Add(col_btn_update);

            DataGridViewButtonColumn col_btn_insert = new DataGridViewButtonColumn();
            col_btn_insert.HeaderText = "增加";
            col_btn_insert.Text = "增加";
            col_btn_insert.UseColumnTextForButtonValue = true;
            dataGridView1.Columns.Add(col_btn_insert);
            this.dataGridView1.DataSource = ds.Tables[0];
            con.Close();
        }



//查询功能代码
 private void button1_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=StuManage;Integrated Security=True");
            con.Open();

            if(comboBox1.Text=="课程名")
            {
                string str = "select * from tb_course where cname='" + textBox1.Text.Trim() + "'";
                GetDB(str);
                

            }
            if (comboBox1.Text == "课程编号")
            {
                string str="select * from tb_course where cno='" + textBox1.Text.Trim() + "'";
                GetDB(str);
                
            }
            if(comboBox1.Text=="" || textBox1.Text=="")


            {
                
                MessageBox.Show("请选择查询的方式并且在输入框中输入相应的查询信息","查询提示");
                return;
            }
             
        }



能不能告诉我是什么原因 或是否可以设置datagridview的属性 让数据正常显示 而不是像图片中显示那样
[解决办法]
  dataGridView1.AllowUserToAddRows  = false;
[解决办法]
设置DataGridView的AllowUserToAddRows属性啊
[解决办法]
如果DataSource为BindingSource等,将AllowNew设置为false
[解决办法]
这....非要把BUTTON放DATAGRIDVEIW里吗?如果只是为了增删改,何不直接放三个BT在旁边?

热点排行