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

Winform中的Datagridview的第1,2,3,4列为Checkbox,怎么根据第1列的值改变第2,3,4例的值

2012-02-11 
Winform中的Datagridview的第1,2,3,4列为Checkbox,如何根据第1列的值改变第2,3,4例的值?Winform中的Datagr

Winform中的Datagridview的第1,2,3,4列为Checkbox,如何根据第1列的值改变第2,3,4例的值?
Winform中的Datagridview的第1,2,3,4列为Checkbox

如何在改变第1列的Checkbox时,把第2,3,4列的checkbox值改成和第一列一样?

我在CellContentClick事件中添加如下代码:


  private void dgvLevel_CellContentClick(object sender, DataGridViewCellEventArgs e)
  {
  int intState = Convert.ToInt32(dgvLevel.Rows[e.RowIndex].Cells[0].Value);
  dgvLevel.Rows[e.RowIndex].Cells[1].Value = intState;
  dgvLevel.Rows[e.RowIndex].Cells[2].Value = intState;
  dgvLevel.Rows[e.RowIndex].Cells[3].Value = intState;
  }

没有任何效果,通过MessageBox来显示intState,总是显示1,而不是根据是否选中显示

[解决办法]
建议楼主用javascript来实现。我以前做过
[解决办法]
哇,试了一下,竟然找不到。郁闷啊,试过以下方法。。

C# code
  DataGridViewCheckBoxCell cell = new DataGridViewCheckBoxCell();        public test()        {            InitializeComponent();            cell.FalseValue = 0;            cell.TrueValue = 1;                    }        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)        {            int rowindex = e.RowIndex;            int columnindex = e.ColumnIndex;            if (columnindex == 0)            {                                cell = (DataGridViewCheckBoxCell)this.dataGridView1.Rows[rowindex].Cells[0];                                object a = cell.Value;                a = cell.FormattedValue;                a = cell.Tag;                               DataGridViewElementStates state =this.dataGridView1.Rows[rowindex].Cells[0].State;                          }        }
[解决办法]
应该让微软提供CellValueChanged事件处理。

热点排行