none
请教代码同步删除问题!!! RRS feed

  • 问题

  •  

    各位大侠,我想请教一下为什么我在用visual basic 2008编程时,视图和代码不同步,就是说比如我在视图编辑里删除个按钮,在代码里并不删除相应的代码,但是当我执行时,我删除的按钮并没有显示出来,有什么办法可以同步删除吗,还望各位大侠指教,我是新手,让大家见笑了,谢谢!
    2008年11月28日 15:54

答案

  •  

    一个原因是编辑器会考虑到也许使用者只是误删除了某一控件,而且此控件的事件代码比较重要,所以不能未经使用者同意随意删除

    而且VB 2008的代码编辑器在你删除控件之后并不是什么都没有做,而是将此控件相应事件后的Handles语句删除

     

    比如在窗体上画了一个Button1按钮,并编写代码如下:

    Button1 with Handles
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Msgbox("Hello, World!")
     End Sub

     

    此时切换到[设计]窗口,删除Button1控件,再回到代码编辑器,会发现编辑器已经自动删除了Handles语句:

    Button1 without Handles

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
            Msgbox("Hello, World!")
        End Sub

     

    也就是说Button1_Click过程已经变成了一个有两个参数的普通的过程,还可以继续供其他代码调用
    2008年11月29日 4:17

全部回复

  •  

    在Basic中的同步的只有控件对应的自动代码,如:控件的大小和控件在窗体的位置等等,

     

    关于事件同步的暂时没有这个功能,如果出来visual studio 2012,说不定就会有了

    2008年11月28日 17:40
  • 只有手工删

    2008年11月29日 1:07
    版主
  •  

    一个原因是编辑器会考虑到也许使用者只是误删除了某一控件,而且此控件的事件代码比较重要,所以不能未经使用者同意随意删除

    而且VB 2008的代码编辑器在你删除控件之后并不是什么都没有做,而是将此控件相应事件后的Handles语句删除

     

    比如在窗体上画了一个Button1按钮,并编写代码如下:

    Button1 with Handles
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Msgbox("Hello, World!")
     End Sub

     

    此时切换到[设计]窗口,删除Button1控件,再回到代码编辑器,会发现编辑器已经自动删除了Handles语句:

    Button1 without Handles

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
            Msgbox("Hello, World!")
        End Sub

     

    也就是说Button1_Click过程已经变成了一个有两个参数的普通的过程,还可以继续供其他代码调用
    2008年11月29日 4:17