最近在做Winform界面时,遇到个很头疼的问题。
如图:
点击 左侧 From1 下的节点 ,怎么也不能让From2 停靠在 右侧,效果与From3一样
问题:点击左边From1中TreeView下的节点时,打开From2,From2根据点击的节点显示不同的数据。并停靠在主窗体上,效果与From3一样
源码地址:源码下载(253K)
希望高手能帮我解决下:并附上代码,不胜感激,并送上所有的积分!(博客园个人最低积分是 10,所有悬赏分不能是 90)
修改过的两个类:http://files.cnblogs.com/halou/docking.rar
看了你的源代码。
Form3是在类MDIParent中这样加进去的:from3.Show(dockPanel1, DockState.Document);
所以Form2也应该是类似这样的 from2.Show(dockPanel1, DockState.Document);
所以,我的解决方法是这样的,点击左边From1里的树节点时,应该以Form2作为参数通知MDIParent将参数加入到document。
----------------------------
弱弱的建议一下,楼主可以学习一下委托。
帮顶,没有研究过。
自己以前做过一个小OA,是点击菜单项,然后选项卡多一个,那时参考的动软源码,你可以下载看看,它里面有这样的效果。
楼主可以研究下sharpdevelop的源码,它基本完全实现了vs的IDE所有功能。
http://www.icsharpcode.net/OpenSource/SD/Download/
哈哈,是你,我改了,上次没有看你是什么要求,你看看吧,那个我不知道怎么加入下载啊,就给你贴上代码好了,就是我修改了一下的代码
//这个是在MDIPARENT里面的
private Form3 form3 = new Form3();
private void MDIParent_Load(object sender, EventArgs e)
{
from1.Show(dockPanel1, DockState.DockLeft);
form3.Show(dockPanel1, DockState.Document);
from1.treeView1.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(treeView1_AfterSelect);
}
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
string s = from1.treeView1.SelectedNode.Text;
if (!form3.IsActivated)
{
from2.Show(dockPanel1, DockState.Document);
from2.ChooseTable(s);
}
}
这个是form2.designer.cs最后一行的
要不你告诉我一下那个下载怎么弄