C#Winforms - 控件无法完全渲染

时间:2017-12-09 19:12:13

标签: c# winforms

我创建了一个包含Panel的用户控件,该面板包含另外4个组件。它应该看起来像这样:

组件正确呈现

Component rendering correctly

它实际上在表单的某些部分呈现这种方式。但是,在表单的其他部分,它呈现如下:

组件呈现错误

Component rendering incorrectly

基本上,带有复选框的部分完全丢失,甚至缺少部分组合。现在我应该补充说,这是在另一个UserControl内部,但据我所知,这不应该影响任何事情。

我应该提到的另一件事是,没有锚定到右边,控件在任何地方都能正确呈现。我尝试在没有面板的情况下锚定组件,但它在任何地方都呈现不正确。现在,我将组件锚定在面板内,工作正常,但由于面板本身未锚定,因此无法正确调整大小。锚定Panel会使其与锚定单个组件的方式相同。

部分解决了这个问题的是这段代码:

private void Component_Resize(object sender, EventArgs e)
{
    pnlContainer.Size = new Size(this.Width, this.Height);
}

它解决了某些地方的渲染问题,但在其他地方,问题仍然存在。我有意义的是,我添加到Resize处理程序的代码将解决所有情况下的问题。造成这个问题的原因是什么,是否有可能的解决方案?

谢谢。

0 个答案:

没有答案