您的问题似乎不完整,您是想询问关于C语言编程的某个具体问题吗?比如C语言的语法、编程技巧、项目开发等。请提供更具体的信息,这样我才能给出更准确的回答。
- 内容介绍
- 相关推荐
本文共计273个文字,预计阅读时间需要2分钟。
目录+方法一+方法二+当需要重绘TabControl的背景颜色时,有两种方法。+方法一+网上有很多文章介绍,将tabControl的DrawMode属性设置为OwnerDrawFixed,然后在DrawItem事件处理程序中重绘背景颜色。+方法二+
目录
- 方法一
- 方法二
当需要重绘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); }
到此这篇关于C# TabControl手动触发DrawItem的实现的文章就介绍到这了,更多相关C# 手动触发DrawItem内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!
本文共计273个文字,预计阅读时间需要2分钟。
目录+方法一+方法二+当需要重绘TabControl的背景颜色时,有两种方法。+方法一+网上有很多文章介绍,将tabControl的DrawMode属性设置为OwnerDrawFixed,然后在DrawItem事件处理程序中重绘背景颜色。+方法二+
目录
- 方法一
- 方法二
当需要重绘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); }
到此这篇关于C# TabControl手动触发DrawItem的实现的文章就介绍到这了,更多相关C# 手动触发DrawItem内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

