visualbasic(vb.net)中如何动态使用事件更加深入的学习

原创 羽化飞翔  2020-08-19 13:52  阅读 456 次
摘要:

我在之前的《visualbasic(vb.net)中如何动态使用事件,AddHandler 事件, AddressOf 方法》一文中提到,使用动态事件的方法(委托的一种),我们可以巧妙的实现同一窗体的重复运用,但是上次讲到的是该窗体上某个控件的触发事件,而且作用于本身,这显然不是我们所期待的那样,我们有时还需要使用了这个空白窗体,其上的某个控件触发另一个控件动作,比如我引用了一个窗体form2,上面有一个按钮button1和一个文本框textbox1,点击这个button1后,textbook1上面出现文字“我爱羽化飞翔”,显然,这个是日常所需的,而且不影响原窗体的结构,近期在应用软件开发的过程中深有体悟,找到了两个解决方法,现在一一与大家分享

visualbasic(vb.net)中如何动态使用事件的疑惑

        我在之前的《visualbasic(vb.net)中如何动态使用事件,AddHandler 事件, AddressOf 方法》一文中提到,使用动态事件的方法(委托的一种),我们可以巧妙的实现同一窗体的重复运用,但是上次讲到的是该窗体上某个控件的触发事件,而且作用于本身,这显然不是我们所期待的那样,我们有时还需要使用了这个空白窗体,其上的某个控件触发另一个控件动作,比如我引用了一个窗体form2,上面有一个按钮button1和一个文本框textbox1,点击这个button1后,textbook1上面出现文字“我爱羽化飞翔”,显然,这个是日常所需的,而且不影响原窗体的结构,近期在应用软件开发的过程中深有体悟,找到了两个解决方法,现在一一与大家分享!

visualbasic(vb.net)中如何动态使用事件的特殊解决方案

 visualbasic(vb.net)环境:窗体Form1,Form2,Form2上面有一个按钮和一个文本框,Form1上有一个按钮,点击Form1上的按钮,调用Form2,再点击Form2上按钮,Form2文本框显示“我爱羽化飞翔

方法一:将窗体变量设为这个class内的全局变量

Public Class Form1
    Private f As New Form2
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        AddHandler f.Button1.Click, AddressOf F_Form2_Button1_Click
        f.ShowDialog()
    End Sub
    Private Sub F_Form2_Button1_Click()
        f.TextBox1.Text = "我爱羽化飞翔"
    End Sub
End Class

方法二:通过父-子关系进行指定

Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim f As New Form2
        AddHandler f.Button1.Click, AddressOf F_Form2_Button1_Click
        f.ShowDialog()
    End Sub
    Private Sub F_Form2_Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        CType(CType(sender, Button).Parent.FindForm(), Form2).TextBox1.Text = "我爱羽化飞翔"
    End Sub
End Class

visualbasic(vb.net)中如何动态使用事件结论

        第一种方法,属于考虑全局,比较方便,第二种方法比较灵活,作为应用软件开发者,需要的是善于解决问题,所以上面两个方法选择哪个,还需要各位自己喜欢。

本文地址:https://www.huazai186.com/post/212.html
关注我们:请关注一下我们的微信公众号:扫描二维码羽化飞翔的公众号,公众号:yhfx8686
版权声明:本文为原创文章,版权归 羽化飞翔 所有,欢迎分享本文,转载请保留出处!此外,本网站旨在向广大网友提供任何资源的开发、使用、安装教程,所提供的下载服务仅供学习交流探讨,请广大网友学习完成后,24小时内删除相关资源。如果涉及到侵犯版权事宜,请联系删除资源下载信息,谢谢各位的理解与支持!
打赏二维码

发表评论

您必须 登录 才能发表留言!