SplitContainer 中 Panel2 部分的闪动

bonnibell 2006-10-23 10:05:03
Form里用了一个SplitContainer

其中splitContainer1.Panel1 中加载了一个 TreeView

通过点击TreeView不同级别中的节点在splitContainer1.Panel2中加载不同的窗体

但是加载过程中splitContainer1.Panel2 部分闪烁的特别厉害

求解决办法!!!
...全文
326 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bonnibell 2006-10-24
  • 打赏
  • 举报
回复
谢谢
Knight94 2006-10-24
  • 打赏
  • 举报
回复
按照配置来说,没有什么问题,我做了测试,也没发现类似的现象。
你最好把你的程序放到别的机器上看看是否有同样的现象。

如果也有的话,最好说说form如何初始化,以及paint中做了什么操作。
bonnibell 2006-10-24
  • 打赏
  • 举报
回复
P42.6

516内存

集成显卡
Knight94 2006-10-24
  • 打赏
  • 举报
回复
to 为什么我这闪的很厉害呢?

机器什么配置
bonnibell 2006-10-24
  • 打赏
  • 举报
回复
请高人帮忙!
bonnibell 2006-10-23
  • 打赏
  • 举报
回复
请高人帮忙!
bonnibell 2006-10-23
  • 打赏
  • 举报
回复
不好意思,我的代码中break;前都有 窗体.show()

我加.Hide() 好像作用不大.

为什么我这闪的很厉害呢?
avisnet 2006-10-23
  • 打赏
  • 举报
回复
我用你的代码试了试,好像不闪
avisnet 2006-10-23
  • 打赏
  • 举报
回复
试试:

Form1 dm = new Form1();
dm.Hide();
dm.FormBorderStyle = FormBorderStyle.None;
dm.TopLevel = false;
dm.Dock = DockStyle.Fill;
this.panel1.Controls.Add(dm);
dm.Show();
bonnibell 2006-10-23
  • 打赏
  • 举报
回复
并没有什么特殊的paint操作啊

新建了很多解决方案测试都这样啊,主要代码如下:

private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
this.splitContainer1.Panel2.Controls.Clear();
switch (e.Node.Tag.GetType().Name.ToString())
{
case "Form1":
Form1 dm = new Form1();
dm.FormBorderStyle = FormBorderStyle.None;
dm.TopLevel = false;
dm.Dock = DockStyle.Fill;
this.splitContainer1.Panel2.Controls.Add(dm);
break;
case "Form2":
Form2 dc = new Form2();
dc.FormBorderStyle = FormBorderStyle.None;
dc.TopLevel = false;
dc.Dock = DockStyle.Fill;
this.splitContainer1.Panel2.Controls.Add(dc);
break;

}
}
Knight94 2006-10-23
  • 打赏
  • 举报
回复
加载窗体到panel?

用panel.Controls.Add加载?

窗体中是否有什么特殊的paint操作?

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧