我有一個帶有Web瀏覽器控件的窗體應用程序,當我重新加載Web瀏覽器上的任何頁面時簡單控制我的應用程序閃爍的標題,這很奇怪,因爲我使用該代碼來減少閃爍儘可能多的爲:Webbrowser閃爍問題
public Form1()
{
InitializeComponent();
//SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.UserPaint, true);
this.SetStyle(ControlStyles.DoubleBuffer, true);
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.UserPaint, true);
this.SetStyle(ControlStyles.SupportsTransparentBackColor, false);
this.SetStyle(ControlStyles.Opaque, false);
this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
this.SetStyle(ControlStyles.ResizeRedraw, true);
}
int originalExStyle = -1;
bool enableFormLevelDoubleBuffering = true;
protected override CreateParams CreateParams
{
get
{
if (originalExStyle == -1)
originalExStyle = base.CreateParams.ExStyle;
CreateParams cp = base.CreateParams;
if (enableFormLevelDoubleBuffering)
cp.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
else
cp.ExStyle = originalExStyle;
return cp;
}
}
private void TurnOffFormLevelDoubleBuffering()
{
enableFormLevelDoubleBuffering = false;
}
private void Form1_Load(object sender, EventArgs e)
{
TurnOffFormLevelDoubleBuffering();
}
**它閃爍安裝IE8僅當,但如果安裝了IE9那麼它不閃爍。 「
也許這是IE瀏覽器版本的瀏覽器控件中的一個錯誤? – 2012-03-22 12:41:17
也許我只是想弄清楚爲什麼它閃爍 – 2012-03-22 12:43:20
IE是否表現出相同的行爲? – 2012-03-22 12:51:00