当前位置:编程学习 > C#/ASP.NET >>

哪位高人指点一下这样一个框架怎么实现?

假设   A   application
       F   代表A里的各各窗体
       H   一个Help的窗体(显示Help文档)
       TREENODE   H里面的TREEVIEW的结点,每个结点对应一个ID
       ID  Help文档的ID,F通过设置H的ID打开并显示相关的帮助文档

       
现在的问题是我想建一个公共的H,在任何的F中打开H时,如果H已经打开,就直接把H放到A的最前面,显示ID的文档,如果H未打开则新建H,打开并把H放到A的最前面,显示ID的文档。

F可能是某个dialog的dialog的dialog,层次不定。

单纯用H的Show好像不行,多线程又不知道怎么写,各位大哥帮帮忙~~~~~
--------------------编程问答-------------------- HelpProvider --------------------编程问答--------------------
引用 1 楼 dylike 的回复:
HelpProvider


刚试了一下helpprovider,不是我想要的,我的帮助文档就一个个html文件,H那个窗体上有个web浏览的控件显示那些xml,Id和Url文档一一对应。
而且这样做是为了可以让用户边开着帮助边自己随便玩界面,只要不关闭主程序,关掉这个当前界面也没关系,和帮助窗口无关的。 --------------------编程问答-------------------- 窗体置前 
TopMost=true; 
遍历当前窗口,获取窗体句柄,激活窗体用
FindWindows
MDI窗体可用
int Children_Count=this.MdiChildren.Length;
for(int i=0;i<Children_Count;i++)
{
if (this.MdiChildren[i].Name=="")

this.MdiChildren[i].WindowState=System.Windows.Forms.FormWindowState.Normal;
this.MdiChildren[i].Focus();
                    return true;
}
} --------------------编程问答-------------------- 不是MDI,就是普通的一个MAIN窗体,然后选择菜单按钮

TopMost也不是我想要的效果,我的意思是说当在某个F里调用了帮助,就把H置到最前面,并不是说一直在最前面不会再到后面去。

简单的说就是没有打开帮助的话就把帮助的窗体show出来,已经show出来了就直接打开相应的节点并置前一次,其实地方F和H没有关联,是两个独立的窗体。 --------------------编程问答-------------------- up...
没怎么明白意思... --------------------编程问答-------------------- up --------------------编程问答--------------------
引用 5 楼 xue1234567890 的回复:
up...
没怎么明白意思...


哪里不明白啊。。。。
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,