设置我的用户控件以自动调整其创建面板的大小时,我遇到了麻烦。当用户调整包含用户控件的主窗体的大小时,此用户控件的大小根本不会改变,从而导致一些糟糕的用户体验。
到目前为止,我尝试了以下内容:
这些尝试对我的用户控件的行为没有影响:
CalcUserControl calcControl = new CalcUserControl(CountryId);
calcControl.Dock = DockStyle.Fill;
panelUserCtrl.Controls.Clear();
panelUserCtrl.Controls.Add(calcControl);
我们非常感谢任何建议。
答案 0 :(得分:2)
尝试将AutoSize
属性设置为False。
此外,不要调用Controls.Clear();
,而是尝试处理其中的控件,例如:
while (panelUserCtrl.Controls.Count > 0) {
panelUserCtrl.Controls[0].Dispose();
}
否则,您正在泄漏内存,因为这些已删除的控件仍然存在。
答案 1 :(得分:0)
您应该将AutoSizeMode设置为GrowAndShrink。