我制作了一个自定义按钮,其中有一个名为
我在运行时以编程方式将此按钮添加到我的winform中,并在添加时为它们定义了单击事件。实际上,我只有一个方法,我订阅了新添加的按钮至此方法。
但是,在单击事件中,我想要访问这个
Data
的字段。我在运行时以编程方式将此按钮添加到我的winform中,并在添加时为它们定义了单击事件。实际上,我只有一个方法,我订阅了新添加的按钮至此方法。
但是,在单击事件中,我想要访问这个
Data
字段并将其显示为消息框,但似乎我的类型转换不正确: CustomButton_Click(object sender, EventArgs e)
{
Button button;
if (sender is Button)
{
button = sender as Button;
}
//How to access "Data" field in the sender button?
//button.Data is not compiling!
}
更新:
很抱歉,我想说的是“无法编译”是指在 intelisense 中没有显示出 .Data
...
sender
是否为Button
,因为as
关键字会确保如果无法将变量转换为正确的类,则该变量为null
。 - StyxxyCustomButton
,它就显示了。 - Dumbo