日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Winform自定義控件在界面拖動、滾動鼠標時閃爍的解決方法_C#教程

作者:VictorStar ? 更新時間: 2022-03-10 編程語言

環境說明:

項目中有一個基類窗體BaseForm,有一個自定義控件TextBoxBase,兩個控件都做了一些獨特常規的封裝和重寫,在TextBoxBase中有一點重繪的下劃線,發現在窗體運行之后,在窗體上滾動鼠標滾輪,會導致TextBoxBase下劃線閃爍。

解決辦法:

重寫兩個控件的CreateParams方法。

BaseForm中添加:

protected override CreateParams CreateParams
{
    get
    {
            CreateParams cp = base.CreateParams;
            cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED
            return cp;
    }
}

TextBoxBase中添加:

protected override CreateParams CreateParams
{
       get
      {
              var parms = base.CreateParams;
              parms.Style &= ~0x02000000; // Turn off WS_CLIPCHILDREN
              return parms;
       }
}

問題解決。

原文鏈接:https://www.cnblogs.com/Start201505/p/6564849.html

欄目分類
最近更新