網站首頁 編程語言 正文
當需要重繪TabControl的背景顏色時,有兩種方法。
方法一
網上有很多文章介紹,將tabControl的DrawMode屬性設為OwnerDrawFixed,然后在其DrawItem事件處理程序中重繪背景顏色。
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
{
//標簽header的背景
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
e.Graphics.FillRectangle(Brushes.White, (sender as TabControl).GetTabRect(i));
}
//tabControl背景
e.Graphics.FillRectangle(Brushes.White, (sender as TabControl).ClientRectangle);
}
方法二
當將tabControl的ItemSize設為(0,1)以便隱藏標簽title的時候,方法一的事件不會被觸發,會導致背景顏色無法重繪,這時候可以使用以下代碼手動執行重繪。
private void ReDrawItem()
{
Graphics g = Graphics.FromHwnd(tabControl1.Handle);
//tabPage標簽header的背景
for (int i = 0; i < tabControl1.TabPages.Count; i++)
{
g.FillRectangle(Brushes.White, tabControl1.GetTabRect(i));
}
//tabControl背景
g.FillRectangle(Brushes.White, tabControl1.ClientRectangle);
}
原文鏈接:https://blog.csdn.net/szy759590387/article/details/127881309
相關推薦
- 2022-03-09 C語言直接插入排序算法介紹_C 語言
- 2023-06-04 pandas.DataFrame中提取特定類型dtype的列_python
- 2022-07-08 PyHacker編寫指南引用Nmap模塊實現端口掃描器_python
- 2022-11-24 nginx平滑升級及nginx配置文件詳解_nginx
- 2022-08-19 Python運行時修改業務SQL代碼_python
- 2022-12-05 C語言實現順序表的基本操作的示例詳解_C 語言
- 2022-07-17 關于elasticsearch連接時斷時續以及Kibana出現server is not ready
- 2023-10-17 nginx重定向url、nginx域名轉發
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支