先上代码 protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
MenuItem CopySelection = new MenuItem("复制选中");
MenuItem CopyAll = new MenuItem("复制全部");
CopySelection.Click += new EventHandler(CopySelection_Click);
CopyAll.Click += new EventHandler(CopyAll_Click);
ContextMenu common_Menu = new ContextMenu(new MenuItem[] { CopySelection, CopyAll });
richTextBox1.ContextMenu = common_Menu;
richTextBox2.ContextMenu = common_Menu;
richTextBox3.ContextMenu = common_Menu; } private void CopySelection_Click(object sender, EventArgs e)
{
if (this.tabControl1.SelectedIndex == 0)
this.richTextBox1.Copy();
else if (this.tabControl1.SelectedIndex == 1)
this.richTextBox2.Copy();
else if (this.tabControl1.SelectedIndex == 3)
this.richTextBox3.Copy();
} private void CopyAll_Click(object sender, EventArgs e)
{
if (this.tabControl1.SelectedIndex == 0)
{
this.richTextBox1.SelectAll();
this.richTextBox1.Copy();
}
else if (this.tabControl1.SelectedIndex == 1)
{
this.richTextBox2.SelectAll();
this.richTextBox2.Copy();
}
else if (this.tabControl1.SelectedIndex == 3)
{
this.richTextBox3.SelectAll();
this.richTextBox3.Copy();
}
}以上能实现“复制选中”和“复制全部”的功能,我想完善下:当文本框为空时,“复制选中”和“复制全部”全灰显; 当文本框不为空时,若没选中任何字,“复制选中”灰显; 其他情况都不灰显。该怎么做??
{
base.OnLoad(e);
MenuItem CopySelection = new MenuItem("复制选中");
MenuItem CopyAll = new MenuItem("复制全部");
CopySelection.Click += new EventHandler(CopySelection_Click);
CopyAll.Click += new EventHandler(CopyAll_Click);
ContextMenu common_Menu = new ContextMenu(new MenuItem[] { CopySelection, CopyAll });
richTextBox1.ContextMenu = common_Menu;
richTextBox2.ContextMenu = common_Menu;
richTextBox3.ContextMenu = common_Menu; } private void CopySelection_Click(object sender, EventArgs e)
{
if (this.tabControl1.SelectedIndex == 0)
this.richTextBox1.Copy();
else if (this.tabControl1.SelectedIndex == 1)
this.richTextBox2.Copy();
else if (this.tabControl1.SelectedIndex == 3)
this.richTextBox3.Copy();
} private void CopyAll_Click(object sender, EventArgs e)
{
if (this.tabControl1.SelectedIndex == 0)
{
this.richTextBox1.SelectAll();
this.richTextBox1.Copy();
}
else if (this.tabControl1.SelectedIndex == 1)
{
this.richTextBox2.SelectAll();
this.richTextBox2.Copy();
}
else if (this.tabControl1.SelectedIndex == 3)
{
this.richTextBox3.SelectAll();
this.richTextBox3.Copy();
}
}以上能实现“复制选中”和“复制全部”的功能,我想完善下:当文本框为空时,“复制选中”和“复制全部”全灰显; 当文本框不为空时,若没选中任何字,“复制选中”灰显; 其他情况都不灰显。该怎么做??
调用里面的方法一行代码就搞定!