以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  未将对象应用到对象实例  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=78148)

--  作者:ljh29206
--  发布时间:2015/12/3 9:37:00
--  未将对象应用到对象实例
mainform,topicbar1,topiclinkclick

代码如下
Dim PB As WinForm.Panel = e.Form.Controls("Panel1")
Dim Name As String = e.Link.Name
e.Form.StopRedraw()

For Each frm As WinForm.Form In forms
    If frm.Formstyle = 2 AndAlso frm.name <> name Then
        frm.close
    End If
Next

Forms(Name).OPEN(-1000,-1500)
Forms(Name).BaseForm.TopLevel = False
Forms(Name).BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Forms(Name).BaseForm.Dock = System.Windows.Forms.DockStyle.Fill
PB.BaseControl.Controls.Clear
PB.BaseControl.Controls.add(Forms(Name).BaseForm)

e.Form.Controls("窗口标题").text = Name
e.Form.ResumeRedraw()

没找到问题所在 请指教

--  作者:大红袍
--  发布时间:2015/12/3 9:38:00
--  
Forms(Name) 必须是独立窗口,停靠、共有什么都不行。
--  作者:ljh29206
--  发布时间:2015/12/3 9:59:00
--  
是的,都是独立窗体,  在 topicbar1 里面 按 慢一点没出现过,   快一点切换 就会报错了 ,搞不懂什么原因
--  作者:大红袍
--  发布时间:2015/12/3 10:02:00
--  
做例子上来测试。
--  作者:ljh29206
--  发布时间:2015/12/3 10:29:00
--  


For Each frm As WinForm.Form In forms
    If frm.Formstyle = 2 AndAlso frm.name <> name Then
        frm.close
    End If
Next

老师   查到原因 出于这个代码, 

问下 独立窗体  放在Panel  经常切换, 有没需要追加这个代码,不加的话,其他开了的窗体会自动关闭吗?






--  作者:大红袍
--  发布时间:2015/12/3 10:45:00
--  
For Each frm As WinForm.Form In forms
    If frm.Opened AndAlso frm.name <> name Then
        frm.close
    End If
Next