对话框控件
.NET提供了各种常用的对话框来提高效率。本文通过创建一个简单的文本编辑器来介绍常用对话框的使用。首先新建一个窗体,放置一个richTextBox控件和一个菜单。如下图:
首先来使用最常用的打开文件对话框,将OpenFileDialog拖放到窗体中,在菜单栏的Open选项上添加事件:
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.Title = "Open File";
openFileDialog1.Filter = "Rich Text Files(*.rtf)|*.rtf|All Files(*.*)|*.*";
openFileDialog1.FileName = "";
openFileDialog1.FilterIndex = 0;
openFileDialog1.InitialDirectory = @"D:/";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
richTextBox1.LoadFile(openFileDialog1.FileName);
}
}
这段代码展示了openFileDialog的主要属性。其中Filter属性的含义是,一个是文件类型提示,一个是筛选模式,用竖线分隔,下一对仍是这样的一对。FilterIndex是表示当前使用的第几个筛选模式。
再来看saveFileDialog,使用方法是类似的:
private void saveToolStripMenuItem_Click(object sender, EventArgs e)
{
saveFileDialog1.DefaultExt = ".rtf";
saveFileDialog1.OverwritePrompt = true;
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
richTextBox1.SaveFile(saveFileDialog1.FileName);
}
}
其中,DefaultExt属性是当保存的文件没有扩展名时,自动为其添加上扩展名。
接着是字体选择框,使用也很简单:
private void fontToolStripMenuItem_Click(object sender, EventArgs e)
{
if (fontDialog1.ShowDialog() == DialogResult.OK)
{
richTextBox1.SelectionFont = fontDialog1.Font;
}
}
类似地,是颜色选择对话框:
private void colorToolStripMenuItem_Click(object sender, EventArgs e)
{
if (colorDialog1.ShowDialog() == DialogResult.OK)
{
richTextBox1.SelectionColor = colorDialog1.Color;
}
}
这时候,我们的程序已经有点像样了: