1

我正在使用以下代码。我想当我选择textbox它告诉我的所有文本时,但我不知道为什么它不起作用。请给我一些帮助。请提供一些代码,以便我在选择textbox text它告诉我的所有文本时可以使用它

if (textBox1.SelectAll() == true)
        {
            MessageBox.Show("You have selected all text in the textbox");
        }

它会告诉我:运算符==不能应用于类型的操作数voidbool

4

6 回答 6

4

你不能简单地检查是否TextBox.SelectionLength == TextBox.Text.Length

http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.selectionlength.aspx

您比较失败,因为您正在将文本与方法的返回值进行比较,该SelectAll方法是 void(它不返回任何内容,因为它只是应用选择)。

于 2012-05-04T13:02:10.140 回答
3

因为

textBox1.SelectAll() 

返回nothing或返回类型是void

只需使用

textBox1.SelectAll();

如果要检查是否选择了所有文本,请检查

if(textBox1.SelectedText == textBox1.Text)
{
     MessageBox.Show("You have selected all text in the textbox");
}

或者

if(TextBox.SelectionLength == TextBox.Text.Length)
{
     MessageBox.Show("You have selected all text in the textbox");
}
于 2012-05-04T12:58:29.513 回答
1
if(textBox1.SelectedText==textBox1.Text)
{
}
于 2012-05-04T13:01:32.657 回答
0

只使用

textBox1.SelectAll();

执行此方法时,将选择文本框中的所有文本。您无需将其与true. TextBox.SelectAll()返回类型为void. 将布尔值与 void 进行比较会产生错误。

于 2012-05-04T13:00:09.073 回答
0

我认为您想为 TextBox.SelectionChanged 事件添加一个事件处理程序,并在其中将 TextBox.SelectedText 与 TextBox.Text 进行比较

于 2012-05-04T13:05:54.383 回答
0

我认为您应该在此处使用 GotMouseCapture 事件,该代码对我来说效果很好。

 private void textBox_GotMouseCapture(object sender, MouseEventArgs e)
    {
        textBox.SelectAll();
        textBox.Focus();
    }
于 2017-07-08T06:27:27.983 回答