Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改窗体时轻弹。C#_C# - Fatal编程技术网

更改窗体时轻弹。C#

更改窗体时轻弹。C#,c#,C#,我有5个分组框,每个分组框中有18个图片框。 当我打开表单时,加载它花费了很多时间。我怎样才能使它更快 下面的代码不起作用 SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.DoubleBuffer, true) 及 它打开后需要很长时间才能填充,还是加载前需要很长时间?在表单加载前大约需要4秒。我建议您以不同的方式加载表单,因为它显然在表单加载事件中加

我有5个分组框,每个分组框中有18个图片框。 当我打开表单时,加载它花费了很多时间。我怎样才能使它更快

下面的代码不起作用

SetStyle(ControlStyles.UserPaint |
     ControlStyles.AllPaintingInWmPaint |
     ControlStyles.DoubleBuffer, true)


它打开后需要很长时间才能填充,还是加载前需要很长时间?在表单加载前大约需要4秒。我建议您以不同的方式加载表单,因为它显然在表单加载事件中加载数据,移动表单直到表单显示,并在表单排序时抛出等待框。让用户感觉系统速度更快,而实际上,使用WS_EX_COMPOSITED并不会让系统速度更快。这会使它变慢,但不那么吸引人。标准的错误是没有对显示的图像给予足够的关注。像素格式是一个非常大的问题,只有32bppPArgb是快速的,图像从来没有这种格式。而且大小非常重要,每次重新绘制pb时,重新缩放大图像以适应picturebox是一项昂贵的操作。第一次显示窗口时最明显。我所说的一切也适用于背景图像。尤其是因为它通常很大,而且不适合表单的客户区。在图片盒里看到它不是免费的。
protected override CreateParams CreateParams
{
get
{
    CreateParams cp = base.CreateParams;
    cp.ExStyle |= 0x02000000;  // Turn on WS_EX_COMPOSITED
    return cp;
}
}