这是我关于stackoverflow的第一个问题,因此询问风格的错误不是故意的。
对于事件处理的概念,我都是 C# 的新手,所以我想知道,是否有可能通过 EventHandler 更改 ToolStripButtonItem 属性的值。
上下文如下:
代码首先初始化包含一些 Windows.Forms-元素的 UI。我感兴趣的ToolStripButtomItem
是,它是否Enabled-attribute
设置为 false 作为默认值。此按钮的功能是在某个参考文件存在时立即切换到比较视图。程序启动时可能会出现这种情况,否则可能会在运行时创建参考文件。当然,你可以执行
Button.Enabled=System.IO.File.Exists(Reference-File)
随着初始化,而不是做类似的事情
CreateFile(ReferenceFile){
...
Button.Enabled = true;
}
但这对我来说似乎很粗糙。
相反,我想这样做:
Button.Enabled = new System.EventHandler(this.EnableButton);
和
private void EnableButton(Object sender, EventArgs e){
if(System.IO.FileExists(ReferenceFile)
Button.Enabled = true;
}
我的意图是,在参考文件存在后立即启用该按钮。有多种方法可以创建参考文件,未来还会有更多。为了避免在每个方法中设置启用值createReferenceFile()
,EventHandling 的概念对我来说似乎很合适。
我正在尝试运行的程序非常全面,所以在这个地方“轮询”是没有选择的。