我一直在寻找这个地方,我找不到任何东西,然后我找到了这个网站,我希望我能得到一些帮助。
我有一个名为rtb1的RichTextBox和一个名为btn1的按钮。
我正在制作一个简单的记事本,我需要知道如何禁用按钮,具体取决于我是否可以在我的richTextBox1中复制。我想知道的是,当我可以复制时如何启用我的按钮,但是当我无法复制时禁用它?
感谢。
答案 0 :(得分:5)
您应该可以订阅RichTextBox.SelectionChanged
活动。如果SelectionLength
大于零,请启用按钮。
这可能如下所示(在构造函数中添加InitializeComponent
之后,或在Form的Load等中添加):
rtb1.SelectionChanged += (sender, args) =>
{
btn1.Enabled = rtb1.SelectionLength > 0;
};
答案 1 :(得分:2)
我想我可以帮助你,我正在研发一款先进的NotePad,我不得不这样做
在您的撤消按钮中输入此代码:
private void btn1_Click(object sender, EventArgs e)
{
rtb1.Copy();
}
然后将此代码放入rtb1.TextChanged事件:
if (rtb1.CanUndo == true)
{
btn1.Enabled = true;
}
else if (rtb1.CanUndo != true)
{
btn1.Enabled = false;
}
这样,如果您可以撤消,则启用撤消按钮,但如果不能,则禁用它。
希望这会有所帮助!!
答案 2 :(得分:-1)
您可以使用SelectionChanged
事件更新文本框,并使用SelectionLength
属性了解是否应启用该文本框:
rtb1.SelectionChanged += (_, args) =>
{
btn1.Enabled = rtb1.SelectionLength > 0;
};