我正在使用以下代码。我希望当我选择textbox
中的所有文字时,它会告诉我,但我不知道为什么它不起作用。请给我一些帮助。请提供一些代码,以便在我选择textbox
text
中的所有文字时,我可以使用此代码,它告诉我
if (textBox1.SelectAll() == true)
{
MessageBox.Show("You have selected all text in the textbox");
}
它会告诉我:运算符==
无法应用于void
和bool
类型的操作数
答案 0 :(得分:4)
你不能简单地检查TextBox.SelectionLength == TextBox.Text.Length
吗?
http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.selectionlength.aspx
您的比较失败,因为您将文本与SelectAll
方法的返回值进行比较,该方法是无效的(因为它只应用了选择而没有返回任何内容)。
答案 1 :(得分: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");
}
答案 2 :(得分:1)
if(textBox1.SelectedText==textBox1.Text)
{
}
答案 3 :(得分:0)
仅使用
textBox1.SelectAll();
执行此方法时,将选中文本框中的所有文本。您无需将其与true
进行比较。 TextBox.SelectAll()返回类型为void
。将布尔值与void进行比较将导致错误。
答案 4 :(得分:0)
我想你想为TextBox.SelectionChanged事件添加一个事件处理程序,然后将TextBox.SelectedText与TextBox.Text进行比较
答案 5 :(得分:0)
我认为你应该使用GotMouseCapture事件这里的代码对我来说没问题。
private void textBox_GotMouseCapture(object sender, MouseEventArgs e)
{
textBox.SelectAll();
textBox.Focus();
}