C# WinForm解决Panel控件中的图片刷新时会闪烁的问题
来源:互联网 发布:鸿合展示台淘宝 编辑:程序博客网 时间:2024/05/21 08:44
最近在项目开发过程中,使用Panel控件显示座位背景图,在分屏切换时,发现背景图会闪烁。在同事的帮助下,通过以下方法解决了:
新建一个类,继承Panel控件类,然后开启该控件的双重辅助缓冲区,禁止擦除背景,具体请看代码:
1、新建一个NewPanel类,继续Panel控件类
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace XC.Contorl
{
/// <summary>
/// 用途:防止Panel闪烁
/// </summary>
public partial class NewPanel : Panel
{
public NewPanel()
{
InitializeComponent();
this.DoubleBuffered = true;//设置本窗体
SetStyle(ControlStyles.UserPaint, true);
SetStyle(ControlStyles.AllPaintingInWmPaint, true); // 禁止擦除背景.
SetStyle(ControlStyles.DoubleBuffer, true); // 双缓冲
}
public NewPanel(IContainer container)
{
container.Add(this);
InitializeComponent();
this.DoubleBuffered = true;//设置本窗体
SetStyle(ControlStyles.UserPaint, true);
SetStyle(ControlStyles.AllPaintingInWmPaint, true); // 禁止擦除背景.
SetStyle(ControlStyles.DoubleBuffer, true); // 双缓冲
}
}
}
2、引用新的Panel控件类
在InitializeComponent() 中,添加以下代码:
this.Panel1 = new XC.Contorl.NewPanel(this.components);
通过以上发法即可解决图片闪烁问题,有错误或不足之处,望批评指正!
- C# WinForm解决Panel控件中的图片刷新时会闪烁的问题
- 解决winform中的panel重绘闪烁问题
- 解决winform中的panel重绘闪烁问题
- C#中解决Panel等控件闪烁的方法
- [C#开发小技巧]解决WinForm控件TabControl闪烁问题
- winform 控件闪烁的问题
- WinForm解决UserControl自定义控件闪烁的问题
- C# WinForm 用户自定义控件闪烁的问题
- C# WinForm页面切换产生控件闪烁的问题
- C#解决动态添加控件时,控件闪烁的问题
- 解决AJAX.NET中的悬停panel在页面加载时闪烁的问题
- .NET WINFORM 日历控件在panel中进行gdi绘制闪烁问题
- Winform 自定义控件闪烁问题
- 解决WinForm界面闪烁问题
- 解决winform窗体闪烁问题
- 解决winform窗体闪烁问题
- 解决winform窗体闪烁问题
- 解决ListView下拉刷新时导致图片闪烁问题
- UVA The Necklace (并查集判断欧拉回路)
- PHP 程序员学数据结构与算法之《栈》
- Qt之Dom添加和修改节点
- 用SQLData读写数据库自定义类型
- Git 字体警告 解决办法
- C# WinForm解决Panel控件中的图片刷新时会闪烁的问题
- 各种学习资源
- 处理网页图片最常见的十个错误及其解决方案
- 东写西读终见大海无量
- 关于“博客之星”评选活动的意见
- windows令牌创建过程
- android屏幕适配相关计算
- RCP启动遇到org.osgi.framework.BundleException: The activator for bundle s invalid
- C字符串的小问题