【发布时间】:2009-01-14 17:30:35
【问题描述】:
我有一个带有一堆用户控件的 Winforms 项目。我希望用户控件将自身移动到相对于其容器的 1,1 位置(无论是表单还是面板控件)。并调整自身大小以适应容器的一半。
我可以在 UserControl 中响应什么事件才能做到这一点,而无需在容器中编写任何代码(例如表单或面板)。
【问题讨论】:
标签: winforms visual-studio-2008 user-controls
我有一个带有一堆用户控件的 Winforms 项目。我希望用户控件将自身移动到相对于其容器的 1,1 位置(无论是表单还是面板控件)。并调整自身大小以适应容器的一半。
我可以在 UserControl 中响应什么事件才能做到这一点,而无需在容器中编写任何代码(例如表单或面板)。
【问题讨论】:
标签: winforms visual-studio-2008 user-controls
您可以使用基本的Load 事件。
代码可能是这样的:
private void UserControl1_Load(object sender, EventArgs e)
{
Control parent = this.Parent;
if (parent != null)
{
this.Location = new Point(1, 1);
this.Width = (parent.Width / 2);
this.Height = (parent.Height / 2);
}
}
【讨论】:
Paint 事件应该可以工作,除非我遗漏了什么。
【讨论】: