zoukankan      html  css  js  c++  java
  • C# 中datagridview行里面有三个cheeckbox,要控制成三选一。

    我之前有试过在cellendedit中处理,可以达成效果,当不符合用户打单的界面要求。该事件是在单元格编辑结束之后,

    当用户选中两个checkbox,且焦点不移开时,界面上会出现有两个checkbox被选中的情况。

    所以看了网上的文章后,放入CellMouseUp中处理。代码如下:

     1         private void dgvMessage_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e)
     2         {
     3             if ((dgvMessage.Columns[e.ColumnIndex].Name.CompareTo("ischeck") == 0) && !Convert.ToBoolean(dgvMessage.CurrentCell.Value))
     4             {
     5                 dgvMessage.CurrentRow.Cells["frontcheck"].Value = false;
     6                 dgvMessage.CurrentRow.Cells["backcheck"].Value = false;
     7             }
     8 
     9             if ((dgvMessage.Columns[e.ColumnIndex].Name.CompareTo("frontcheck") == 0) && !Convert.ToBoolean(dgvMessage.CurrentCell.Value))
    10             {
    11                 dgvMessage.CurrentRow.Cells["ischeck"].Value = false;
    12                 dgvMessage.CurrentRow.Cells["backcheck"].Value = false;
    13             }
    14 
    15             if ((dgvMessage.Columns[e.ColumnIndex].Name.CompareTo("backcheck") == 0) && !Convert.ToBoolean(dgvMessage.CurrentCell.Value))
    16             {
    17                 dgvMessage.CurrentRow.Cells["ischeck"].Value = false;
    18                 dgvMessage.CurrentRow.Cells["frontcheck"].Value = false;
    19             }
    20         }
  • 相关阅读:
    苦逼也聊模式--(0)--开篇
    发现无力吐槽
    JS函数调用
    初步使用nodejs(一)
    测试一下
    达摩流浪者
    Revit:二开使用Sqlite保存本地数据,并配合EF6等ORM框架
    Revity:查找并修改类型参数和实例参数
    复习一下UML
    Revit:ElementFilter过滤器基类
  • 原文地址:https://www.cnblogs.com/lhy5678888/p/3782247.html
Copyright © 2011-2022 走看看