当前位置:  开发笔记 > 后端 > 正文

Visual Studio与#Develop - 默认事件处理程序

如何解决《VisualStudio与#Develop-默认事件处理程序》经验,为你挑选了1个好方法。

Visual Studio和SharpDevelop都没有设置委托来以相同的方式处理事件.它们的设置方式略有不同.这使得很难在一个地方使用VS而在另一个地方使用#Develop(在同一个项目中).

例如,在VB中,Visual Studio执行以下操作:

Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
    Me.DialogResult = System.Windows.Forms.DialogResult.OK
    Me.Close()
End Sub

而......

Friend WithEvents OK_Button As System.Windows.Forms.Button

因此,声明控件,不仅具有不同的范围(这也可能是一个问题,但不是这篇文章的主题),但是有一个问题.然后,handle子句将事件处理程序分配给它.

在#Develop中,它是这样完成的......

Sub OK_ButtonClick(sender As Object, e As EventArgs)

End Sub

和......

Private button1 As System.Windows.Forms.Button

然后,在InitializeComponent方法中

AddHandler Me.button1.Click, AddressOf Me.OK_ButtonClick

关于这一点最烦人的事情是,即使它以一种方式完成,另一种ide将重做它,具有重复声明,当然还有编译时错误.

有没有人知道解决这个问题的方法,某种方式来自定义默认处理程序?即使它只是某种方式可以关闭它们,所以它可以手动输入?



1> Jorge Villue..:

Sharpdevelop是根据LGPL许可证发布的,因此您可以随时获取源代码并进行所需的任何更改.

对于所需的更改,您可能需要更改或覆盖VBNetDesignerGenerator类中的InsertComponentEvent和CreateEventHandler方法.它在FormsDesigner项目中.

你可以在这里获得消息来源.

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有