当使用Infragistics组件和调整大小例程时,Winforms应用程序在不同的计算机上显示不同

当使用Infragistics组件和调整大小例程时,Winforms应用程序在不同的计算机上显示不同,winforms,compatibility,infragistics,Winforms,Compatibility,Infragistics,我正在使用Winforms开发GUI。在大多数测试计算机上,一切看起来都很好(如中所示,UI的显示方式与开发GUI的pc相同)。但是,在一台笔记本电脑上,有几个元素显示不正确(大小错误,或重绘时出现问题) 我正在进行测试,以找出我们可能出错的地方;所有计算机都以不同的屏幕分辨率运行Windows 7 我正在使用Infragistics组件构建UI。有什么想法吗 编辑:一些例子。在“损坏”的笔记本电脑上,某些选项卡(UltraWinTab的一部分)无效,并且在执行最小化/还原命令后不会重新绘制,您

我正在使用Winforms开发GUI。在大多数测试计算机上,一切看起来都很好(如中所示,UI的显示方式与开发GUI的pc相同)。但是,在一台笔记本电脑上,有几个元素显示不正确(大小错误,或重绘时出现问题)

我正在进行测试,以找出我们可能出错的地方;所有计算机都以不同的屏幕分辨率运行Windows 7

我正在使用Infragistics组件构建UI。有什么想法吗

编辑:一些例子。在“损坏”的笔记本电脑上,某些选项卡(UltraWinTab的一部分)无效,并且在执行最小化/还原命令后不会重新绘制,您只能获得选项卡的背景,但没有组件


其他一些控件莫名其妙地以小得多的尺寸绘制(不是填充区域,而是底部和右侧的大空条带)。

我们在这方面也遇到了问题。带有Infragistics控件的Windows.Forms应用程序在Windows XP上看起来不错,但在W7上,各种各样的大小调整问题开始出现。我花了很长时间才弄清楚发生了什么事

当然,首先我认为这与基础设施有关,但我只是在任何论坛上都找不到任何线索。最后,我无意中发现了一个问题,其中有人解释说,除了控件的特定嵌套层次结构之外,调整大小的事件不再触发

我们有一个UI框架,对我们来说,它足以使
System.Windows.Forms.SplitContainer
具有以下覆盖:

// HACK: under Windows7, controls do not always redraw to their whole rectangle after restoring their size.
protected override void OnSizeChanged(EventArgs e)
{
    if (Handle != null) // Can be null because the event is invoked before the handle is created.
        BeginInvoke((MethodInvoker)(() => base.OnSizeChanged(e)));
}

因为我们在SplitContainers上有基础设施控件(网格、dock manager)。也许Infragistics控件有一个很深的嵌套层,使其比其他控件更快发生。

您是否有处于“自然”和“损坏”状态的组件的图像?恐怕我最好避免发布应用程序的屏幕截图-我将尽可能匿名,如果没有解决办法,这是几天内的最后手段。在此期间,我用几个具体的例子编辑了我的信息Shi Gert,非常感谢你的回答。我觉得这可能与调整尺寸有关;我会尽快测试你的解决方案。