1

我有一个Checkbox数组。我把它放在一个Listview. 我CheckedChanged为他们设置了事件处理程序。事件CheckedChanged成功触发,我想从发送者对象获取控件的 GUID。如何获取 GUID?

_ckeckBox[i].CheckedChanged += new EventHandler(frmMain_CheckedChanged);

void frmMain_CheckedChanged(object sender, EventArgs e)
{ 

}
4

4 回答 4

3

正如评论员所提到的,sender 参数告诉您哪个控件正在调用事件:

void frmMain_CheckedChanged(object sender, EventArgs e)
{ 
  CheckBox cb = sender as CheckBox;
  if (cb != null) {
    MessageBox.Show("Checked " + cb.Name);
  }
}
于 2012-12-20T14:51:28.237 回答
1
 void frmMain_CheckedChanged(object sender, EventArgs e)
        {
            CheckBox chk = (CheckBox)sender;
            if (chk != null && chk.Tag != null && !string.IsNullOrEmpty(chk.Tag.ToString()))
            {
                NodeManager.UpdateNodeActive(chk.Tag.ToString(), chk.Checked);

                _isCheckUncheckQueued = true;
                ProcessQueuedNodeList();
            }
        }
于 2012-12-20T15:07:45.823 回答
0

没有这样的“控制指南”..

您可以使用他的唯一 ID 确定调用了哪一个。

于 2012-12-20T14:46:09.977 回答
0

您可以使用NameWin 表单中的属性来确定选中哪个复选框。

于 2012-12-20T14:54:28.903 回答