关闭应用程序时MdiChildren长度不正确 [英] MdiChildren Length Incorrect When Closing Application

查看:118
本文介绍了关闭应用程序时MdiChildren长度不正确的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,



1.我正在申请使用mdiform且有多个子女表格



2.我使用上一个和下一个按钮从一个孩子导航到另一个孩子



以下是我的代码

< pre lang =vb> 私有 Sub Form1_MdiChildActivate(发件人正如 对象,e As EventArgs)句柄 MyBase .MdiChildActivate
Dim frmact = .ActiveMdiChild
Dim i = Array.IndexOf( Me 。 MdiChildren,frmact)

如果 i = 0 AndAlso .MdiChildren.Length = 1 然后
btnNext.Enabled = False
btnPrevious.Enabled = True
ElseIf i = 0 AndAlso < span class =code-keyword> Me
.MdiChildren.Length> 1 然后
btnNext.Enabled = True
btnPrevious.Enabled = False
ElseIf i = .MdiChildren.Length - 1 然后
btnNext.Enabled = False
btnPrevious.Enabled = True
Else
btnNext.Enabled = True
btnPrevious.Enabled = True
结束 如果

如果 .ActiveMdiChild Nothing 然后
btnNext.Enabled = False
btnPrevious.Enabled = False

结束 如果
结束 Sub



但当我关闭mdichild表格mdichildrenlength显示正确

如果您有任何解决方案,那么我想使用该解决方案



提前谢谢

解决方案

这是一个想法:谁需要MDI?为什么要折磨自己并吓跑你的用户?

帮自己一个大忙:根本不要使用MDI。没有它,您可以更轻松地实现设计,质量更好。 MDI甚至被微软高度劝阻,事实上,微软将其从WPF中删除并且很难支持它。更重要的是,如果您使用MDI,您将吓跑所有用户。只是不要。请参阅:

http://en.wikipedia.org/wiki/Multiple_document_interface#Disadvantages

如何在WPF中创建MDI父窗口?



我可以解释做什么。请看我过去的答案:

如何在WPF中创建MDI父窗口?

关于在WPF中使用MDI窗口的问题

MDIContainer给出错误

如何设置最大化子表单,最小化最后一个子表单

为什么WPF本身不支持MDI表单? [ ^ ]。



-S A

Hello,

1. I am making an application in which i am using mdiform and having multiple child form

2. I am using previous and next button to navigate from one child to another

following is my code

Private Sub Form1_MdiChildActivate(sender As Object, e As EventArgs) Handles MyBase.MdiChildActivate
       Dim frmact = Me.ActiveMdiChild
       Dim i = Array.IndexOf(Me.MdiChildren, frmact)

       If i = 0 AndAlso Me.MdiChildren.Length = 1 Then
           btnNext.Enabled = False
           btnPrevious.Enabled = True
       ElseIf i = 0 AndAlso Me.MdiChildren.Length > 1 Then
           btnNext.Enabled = True
           btnPrevious.Enabled = False
       ElseIf i = Me.MdiChildren.Length - 1 Then
           btnNext.Enabled = False
           btnPrevious.Enabled = True
       Else
           btnNext.Enabled = True
           btnPrevious.Enabled = True
       End If

       If Me.ActiveMdiChild Is Nothing Then
           btnNext.Enabled = False
           btnPrevious.Enabled = False

       End If
   End Sub


but when i am closing the mdichild form mdichildrenlength showing in correct
If you have any solution then i like to use that solution

Thanks in advance

解决方案

Here is the idea: who needs MDI, ever? Why torturing yourself and scaring off your users?
Do yourself a great favor: do not use MDI at all. You can do much easier to implement design without it, with much better quality. MDI is highly discouraged even by Microsoft, in fact, Microsoft dropped it out of WPF and will hardly support it. More importantly, you will scare off all your users if you use MDI. Just don't. Please see:
http://en.wikipedia.org/wiki/Multiple_document_interface#Disadvantages,
How to Create MDI Parent Window in WPF?.

I can explain what to do instead. Please see my past answers:
How to Create MDI Parent Window in WPF?,
Question on using MDI windows in WPF,
MDIContainer giving error,
How to set child forms maximized, last childform minimized,
Why MDI form is not supported natively in WPF ?[^].

—SA


这篇关于关闭应用程序时MdiChildren长度不正确的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆