加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

vb.net – 在哪里可以控制winform右上角的“X”关闭按钮的行为?

发布时间:2020-12-17 00:06:52 所属栏目:大数据 来源:网络整理
导读:我正在冒险使我的VB.NET应用程序更好地使用,通过制作一些形式无模式. 我想我已经弄清楚如何使用dlg.Show()和dlg.Hide()而不是调用dlg.ShowDialog().我的主要应用程序窗体中有一个我的无模式对话框的实例: Public theModelessDialog As New dlgModeless 要启
我正在冒险使我的VB.NET应用程序更好地使用,通过制作一些形式无模式.

我想我已经弄清楚如何使用dlg.Show()和dlg.Hide()而不是调用dlg.ShowDialog().我的主要应用程序窗体中有一个我的无模式对话框的实例:

Public theModelessDialog As New dlgModeless

要启动我调用的无模式对话框

theModelessDialog.Show()

并且在我的dlgModeless中的确定和取消按钮处理程序

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.Hide()
End Sub

Private Sub Cancel_Button_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Cancel_Button.Click
    Me.DialogResult = System.Windows.Forms.DialogResult.Cancel
    Me.Hide()
End Sub

这似乎工作正常.

右上方的“X”按钮正在让我得到.当我用这个按钮关闭表单,然后尝试重新打开窗体,我得到

ObjectDisposedException was unhandled. Cannot access a disposed object.

我觉得我最喜欢的方式,但我不知道如何做以下任一:

>隐藏“X”按钮
抓住事件,所以我不处理对象(只是对待它,就像我点击取消)

有任何想法吗?

此对话框的类是System.Windows.Forms.Form.

使用Me.Close()隐藏窗体.要打开它,请使用以下代码段:
If theModelessDialog.IsDisposed Then
    theModelessDialog = New dlgModeless
End If
dlgModeless.Show()

如果这是保存数据,那么您需要确定一些存储方式(可能是以静态变量/形式).这是做你想要实现的正确方法.

如果我的VB已经关闭了,那么你也必须原谅我,已经有一段时间了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读