winform datagridview中combobox列改变选项时,用什么触发事件?

时间:2020-12-08 19:25:14
实现效果:
改变combobox的选项同时,把value值传到后面的文本列里
重点:
同时变化

很多事件可以实现传值的功能,但无法达到同时的效果,总要在点击combobox选项之后,再点击其他列才会响应,求给位大侠指导,谢谢

5 个解决方案

#1


你想的是 点combobox时 出现很多选项 然后 移动到那个选项就把那个值赋值到文本框? 而不是点击之后再赋值?

#2


引用 1 楼 mimrc7993 的回复:
你想的是 点combobox时 出现很多选项 然后 移动到那个选项就把那个值赋值到文本框? 而不是点击之后再赋值?

点击,点击之后文本列里的值立刻更新
我说的不同时是指点击之后,combobox中显示的值变了,文本列显示的值不变,必须再把鼠标点击其他列一下,文本列的值才会更新

#3



        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            //这事件不可以吗? winform的combobox没有value值的吧 只有text属性和index 
            textbox1.Text = combobox1.Text;
            textbox1.Text = comboBox2.SelectedText;
        }

#4


引用 3 楼 mimrc7993 的回复:
C# code?123456        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)        {            //这事件不可以吗? winform的combobox没有value值的吧 只有text属性和index             textbox1……

。。是datagridview中的combobox列,不是单独的combobox控件

#5



private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            //列的索引根据自己的网格来
            if (dataGridView1.CurrentCell.RowIndex != -1 && dataGridView1.CurrentCell.ColumnIndex == 0)
            {
                //还原控件并绑定事件
                ((ComboBox)e.Control).SelectedIndexChanged += new EventHandler(Form1_SelectedIndexChanged);
            }
        }
        //自定义事件
        private void Form1_SelectedIndexChanged(object sender, EventArgs e)
        {
            MessageBox.Show(((ComboBox)sender).SelectedIndex.ToString());
        }

#1


你想的是 点combobox时 出现很多选项 然后 移动到那个选项就把那个值赋值到文本框? 而不是点击之后再赋值?

#2


引用 1 楼 mimrc7993 的回复:
你想的是 点combobox时 出现很多选项 然后 移动到那个选项就把那个值赋值到文本框? 而不是点击之后再赋值?

点击,点击之后文本列里的值立刻更新
我说的不同时是指点击之后,combobox中显示的值变了,文本列显示的值不变,必须再把鼠标点击其他列一下,文本列的值才会更新

#3



        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            //这事件不可以吗? winform的combobox没有value值的吧 只有text属性和index 
            textbox1.Text = combobox1.Text;
            textbox1.Text = comboBox2.SelectedText;
        }

#4


引用 3 楼 mimrc7993 的回复:
C# code?123456        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)        {            //这事件不可以吗? winform的combobox没有value值的吧 只有text属性和index             textbox1……

。。是datagridview中的combobox列,不是单独的combobox控件

#5



private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
        {
            //列的索引根据自己的网格来
            if (dataGridView1.CurrentCell.RowIndex != -1 && dataGridView1.CurrentCell.ColumnIndex == 0)
            {
                //还原控件并绑定事件
                ((ComboBox)e.Control).SelectedIndexChanged += new EventHandler(Form1_SelectedIndexChanged);
            }
        }
        //自定义事件
        private void Form1_SelectedIndexChanged(object sender, EventArgs e)
        {
            MessageBox.Show(((ComboBox)sender).SelectedIndex.ToString());
        }