我一直在寻找这个地方,我找不到任何东西,然后我找到了这个网站,我希望我能得到一些帮助。
我有一个名为 rtb1 的 RichTextBox 和一个名为 btn1 的按钮。
我正在制作一个简单的记事本,我需要知道如何根据是否可以在我的richTextBox1 中复制来禁用按钮。我想知道的是如何在可以复制时启用按钮但在无法复制时禁用它?
谢谢。
我一直在寻找这个地方,我找不到任何东西,然后我找到了这个网站,我希望我能得到一些帮助。
我有一个名为 rtb1 的 RichTextBox 和一个名为 btn1 的按钮。
我正在制作一个简单的记事本,我需要知道如何根据是否可以在我的richTextBox1 中复制来禁用按钮。我想知道的是如何在可以复制时启用按钮但在无法复制时禁用它?
谢谢。
您应该能够订阅该RichTextBox.SelectionChanged
事件。SelectionLength
如果大于零,则启用您的按钮。
这可能如下所示(InitializeComponent
在您的构造函数或表单的加载等中添加之后):
rtb1.SelectionChanged += (sender, args) =>
{
btn1.Enabled = rtb1.SelectionLength > 0;
};
我想我可以帮助你,我正在开发一个高级记事本,我不得不这样做
在您的撤消按钮中输入以下代码:
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;
}
这样,如果您可以撤消,则启用撤消按钮,但如果不能,请禁用它。
希望这可以帮助!!
您可以使用该SelectionChanged
事件来更新文本框并使用该SelectionLength
属性来了解是否应该启用它:
rtb1.SelectionChanged += (_, args) =>
{
btn1.Enabled = rtb1.SelectionLength > 0;
};