窗体容器中如何修改窗体排列顺序?

pig357 2012-12-05 04:45:43
如题,我需要在主界面中显示3个模块M1,M2,M3.每个模块对应3个通道A,B,C。每个通道显示一个窗体。也就是说界面上显示9个子窗体。我需要显示成:
M1A M1B M1C
M2A M2B M2C
M3A M3B M3C
这样的。使用LayoutMdi()排序后,发现子窗体能够排列,但顺序是混乱的。请问这个该怎么修改?
...全文
138 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
pig357 2012-12-06
  • 打赏
  • 举报
回复
是这样的,开发环境:Win8平板 VS2012 Winform C#


顺序不是固定的,如果我移动了子窗体,下次排序又不一样了,混乱的很。
hard_learner 2012-12-06
  • 打赏
  • 举报
回复
发上你的界面来看一下
pig357 2012-12-06
  • 打赏
  • 举报
回复
这样使用,子窗体就不能移动或缩放了啊
hard_learner 2012-12-06
  • 打赏
  • 举报
回复


private void FrmTableLayout_Load(object sender, EventArgs e)
{
var frmTimeM1A = new FrmTime("M1A");
frmTimeM1A.TopLevel = false;
frmTimeM1A.FormBorderStyle = FormBorderStyle.None;
frmTimeM1A.StartPosition = FormStartPosition.CenterParent;
frmTimeM1A.Dock = DockStyle.Fill;
this.pnlM1A.Controls.Add(frmTimeM1A);
frmTimeM1A.Show();

var frmTimeM1B = new FrmTime("M1B");
frmTimeM1B.TopLevel = false;
frmTimeM1B.FormBorderStyle = FormBorderStyle.None;
frmTimeM1B.StartPosition = FormStartPosition.CenterParent;
frmTimeM1B.Dock = DockStyle.Fill;
this.pnlM1B.Controls.Add(frmTimeM1B);
frmTimeM1B.Show();
}
hard_learner 2012-12-06
  • 打赏
  • 举报
回复
你可以采用Panel布局,然后把窗体嵌入到Panel的思路
pig357 2012-12-06
  • 打赏
  • 举报
回复
是需要自己写移动窗体位置的代码么?没有定义顺序的设置么?
  • 打赏
  • 举报
回复
普通的Form实现不了您的需求,自定义Form吧
pig357 2012-12-06
  • 打赏
  • 举报
回复
请教各位,这个问题该怎么解决啊??

110,534

社区成员

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

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

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