标签页与《【C#】向导式窗体》(点击打开链接)一样,是一个能够极大地节省窗体空间的神器。而且来到C#中,不像VC6中的《【mfc】标签页》(点击打开链接)复杂。
下面用如下一个极其简单的窗体,说明C#标签页,也就是TabControl控件怎么使用。
在窗体程序一开始,输出有多少个标签页,之后每切换一次标签页,都会在日志信息下的TextBox有所输出。
窗体布局如下,实质上,那个日志信息输出框就是一个简简单单的多行TextBox而已~
唯一需要注意的是,TabControl这个容器编辑的时候,需要时刻注意自己是修改单一标签页,还是改变整个标签页控件。
布局弄完之后,具体代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace tabControl_test
{
public partial class Form1 : Form
{
public void out_log(Object log)//自定义的日志输出方法,这里设置为Object意为接受所有参数
{
if (textBox1.GetLineFromCharIndex(textBox1.Text.Length) > 3)
{
//如果textbox中的文本行数大于3行,则清空
textBox1.Text = "";
}
textBox1.AppendText(DateTime.Now.ToString("HH:mm") + " " + log + "\r\n");
}
public Form1()
{
InitializeComponent();
out_log("共" + tabControl1.TabCount + "个标签页");
}
private void button1_Click(object sender, EventArgs e)
{
tabControl1.SelectTab(1);//切到第1个标签页
}
private void button2_Click(object sender, EventArgs e)
{
tabControl1.SelectTab(0);//切到第0个标签页
}
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)//标签切换时触发
{
out_log("切到标签页" + tabControl1.SelectedIndex);
}
}
}
上述代码完成了一个tabControl标签页改变事件的使用,代码切换标签页,统计用多少个标签页的过程。基本这样就够用了。