c# - 如何触发创建的复选框更改事件 C#

标签 c# events checkbox datagridview

我在 gridview 中创建了这些复选框,以允许我的用户选择多行。我的问题是当单击复选框时,它们应该为每个单击的复选框存储信息。我在里面放置了断点,事件从未被触发。这是我需要调用的东西才能运行此事件吗?我的印象是它就像任何其他事件一样,它只是在触发它时运行。我还没有找到针对此类问题的通用帮助,这似乎是更具体的问题。您是否有任何关于如何让我的事件正确触发的帮助或建议?

在表单加载时建立

ckBox = new CheckBox();
//Get the column header cell bounds
Rectangle rect = this.dropdeadGridView.GetCellDisplayRectangle(0, -1, true);
ckBox.Size = new Size(18, 18);
//Change the location of the CheckBox to make it stay on the header
ckBox.Location = rect.Location;
ckBox.CheckedChanged += new EventHandler(ckBox_CheckedChanged);
//Add the CheckBox into the DataGridView
this.dropdeadGridView.Controls.Add(ckBox);

然后这是我在 chkbox_CheckChanged 事件中声明发生的事情

var rows = dropdeadGridView.Rows;

for (int j = 0; j < this.dropdeadGridView.RowCount; j++)
{
    this.dropdeadGridView[0, j].Value = this.ckBox.Checked;

    bool checkBoxValue = Convert.ToBoolean(dropdeadGridView.Rows[5].Cells[1].Value); 
    if (checkBoxValue)
    {
        values += rows[j].Cells[2] + ",";
        CurrentOrders = values;
    }
}
this.dropdeadGridView.EndEdit();

最佳答案

希望你使用的是windows应用程序

http://csharp.net-informations.com/datagridview/csharp-datagridview-checkbox.htm

此链接告诉您如何在 gridview 中添加复选框。更改选择时,将触发 afteredit、validateedit 等网格事件。

我们通过检查列号(如果列号与复选框列号匹配)在那里进行编码,在那里执行您在事件中提到的操作

我对 winforms 的经验较少,我只使用 C1FlexGrid(Windows 网格中也有等效项)

关于c# - 如何触发创建的复选框更改事件 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24152523/

相关文章:

c# - Xamarin.Forms:如何下载图像,将其保存在本地并在屏幕上显示?

c# - 如果指定的文件名已经存在,则获取唯一文件名的方法 (.NET)

javascript - 选择选项的一个值后 Controller 响应

javascript - 文本上的 onclick 事件以显示图像

通过 ajax 动态内容中的 jQuery 事件

c# - 不应运行的静态初始化器

c# - 使用 Facebook C# SDK 获取 friend 的事件太慢

javascript - 如何验证多个复选框以在 jquery/javascript 中检查至少一个?

javascript - 动态添加到 div 时如何防止选中复选框?

css - 自定义 Bootstrap 复选框