自定义控件——自绘
<div id="cnblogs_post_body">WinForm的一些控件具备自绘功能,这就意味着你可以对这些控件进行自绘,起到意想不到的效果。以下控件就是通过一些简单的控件转变过来的&mdash;&mdash;1、横向选项卡:
http://pic002.cnblogs.com/images/2012/343864/2012070714065156.jpg
这个&ldquo;横向&rdquo;对话框其实是通过一个TabControl进行&ldquo;方向旋转&rdquo;、重绘控件项等操作进行实现的。步骤如下:
1.1)Alignment:用于控制选项卡的方向(设置为Left)。
1.2)SizeMode:用于调整每个选项卡,默认是Normal(非自绘模式),此处应该设置为Fixed(固定模式),则允许自绘。
1.3)设置ItemSize(注意每一个选项卡因为是&ldquo;横向&rdquo;的,但是这些单元卡的Width或者是Height确实按照原来&ldquo;竖向&rdquo;的选项卡进行处理的。因此Height其实是横向选项卡的&ldquo;宽度&rdquo;,而Width确实选项卡的&ldquo;高度&rdquo;,注意不要混淆)。
1.4)最后重绘DrawItem,这一步也就是最重要的(为了显示文字)。每次Draw_Item会在创建了TabPage之后被调用。此时你应该设定绘制文字的起始点(定义X,Y)。代码如下:
<div class="cnblogs_code">private void tabControl1_DrawItem(object sender, DrawItemEventArgs e) { e.DrawFocusRectangle(); e.DrawBackground(); e.Graphics.DrawString("标签" + (e.Index + 1), SystemFonts.DefaultFont, Brushes.Black, new PointF(e.Bounds.X + 5, e.Bounds.Y + 5)); }
页:
[1]