【发布时间】:2012-06-03 15:27:25
【问题描述】:
我正在尝试创建一个多布局主屏幕应用程序。我在顶部有一些按钮链接到应用程序的主要部分(例如模型中每个实体的管理窗口)
单击这些按钮中的任何一个都会在面板中显示关联的用户控件。 Panel 拥有 UserControl,而后者又拥有 UI。
WinForms 用户控件没有Anchor 或Dock 属性。
我已经尝试过设置 UserControl 的属性
AutoSize=True
和
private void ManageUsersControl_Load(object sender, EventArgs e)
{
this.Width = this.Parent.Width;
this.Height = this.Parent.Height;
}
但是这些都不起作用。
注意:我在运行时动态加载这个控件
【问题讨论】:
-
UserControl确实有一个Dock属性 - 它从Control继承该属性。请参阅msdn.microsoft.com/en-us/library/… 的属性部分 -
上述语句“Winforms 用户控件没有“Anchor”或“Dock”属性”是错误的。我在 UserControl 上寻找“Dock”。它应该只出现在添加到 UserControl 的控件(子控件)中。
-
@MvanGeest 是的,这是有道理的,但为什么它没有出现在设计器属性网格中?
-
因为此时,UserControl 是独立的,没有添加到任何需要填充类型的父级 - 如果我在 Panel 控件上并且我添加了 UserControl,它应该会显示跨度>
-
我认为 System.Windows.Forms.UserControl (确实有 Dock 属性)和 System.Windows.Controls.UserControl (没有t)。
标签: c# .net winforms mdi multipage