从 checkbox_CheckChanged 返回一个值

use*_*689 1 c# events winforms

请问如何从 checkbox_CheckChanged 事件中获取返回值?它是一个 winforms 应用程序,表单和复选框都是以编程方式创建的。感谢所有帮助。

Tu *_*ran 5

您可以从“发送者”对象获取值。

CheckBox chk = (CheckBox) sender;
bool result = chk.Checked;
Run Code Online (Sandbox Code Playgroud)


Sai*_*ala 5

Controls 事件处理程序始终为“void”,您无法更改返回类型。相反,您可以采用外部变量,并且仅在发生 CheckedChanged 事件时更改该值。

public bool checkedthecheckbox { get; set; }

CheckBox testchbox = new CheckBox();

private void Form1_Load(object sender, EventArgs e)
{
    testchbox.CheckedChanged += new EventHandler(testchbox_CheckedChanged);
}

void testchbox_CheckedChanged(object sender, EventArgs e)
{
    if (testchbox.Checked)
        checkedthecheckbox = true;
    else
        checkedthecheckbox = false;
}
Run Code Online (Sandbox Code Playgroud)