deleyd
asked on
CTRL-A select all text in textBox
OK I would like CTRL-A (on keyboard) to select all the text in my textBox1. Right now CTRL-A does nothing, even though my cursor is in the textBox1.
Is the text selectable? CTRL-A should work by default, I believe...
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Are you doing any key press filtering? Barring that, I'd have to agree with paulmacd.
ASKER
OK I'll have a look at the textBox parameters. Maybe there's a setting somewhere I need to set from False to True.
On further inspection, maybe it doesn't. I created a quick project, and it seems the key combination does not work as one would expect--though copy and paste key combinations did. It seems you may need rikin_shah's logic after all.
ASKER
Hmm, I don't see anything. I see AcceptsReturn and AcceptsTab. Nothing about selectable.
set the form's keypreview to true and handle the keyup event of the form. In there, check for the CTRL-A combination and also whether the textbox is currently selected then simply do copy textbox.text to clipboard
You shouldn't need KeyPreview for this task. KeyPreview is for the form to have a peek at (and possibly handle/suppress) the key being pressed before the control which is to process the key press receives the actual message stating a key was pressed.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Hmm, very strange it works for Idle_Mind. I have VS2010 on Vista. CTRL-A works for other programs.
Here's my Form1.Designer.cs stripped down:
Here's my Form1.Designer.cs stripped down:
partial class Form1
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
private void InitializeComponent()
{
this.textBox1 = new System.Windows.Forms.TextBox();
this.textBox2 = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// textBox1
//
this.textBox1.Font = new System.Drawing.Font("Times New Roman", 26.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.textBox1.Location = new System.Drawing.Point(9, 12);
this.textBox1.Multiline = true;
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(669, 52);
this.textBox1.TabIndex = 48;
//
// textBox2
//
this.textBox2.AcceptsReturn = true;
this.textBox2.AcceptsTab = true;
this.textBox2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.textBox2.Location = new System.Drawing.Point(12, 92);
this.textBox2.Multiline = true;
this.textBox2.Name = "textBox2";
this.textBox2.Size = new System.Drawing.Size(666, 50);
this.textBox2.TabIndex = 51;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(703, 338);
this.Controls.Add(this.textBox2);
this.Controls.Add(this.textBox1);
this.Name = "Form1";
this.Text = "Form1";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.TextBox textBox2;
}
}
Ctrl-A works for me: VS2010 on Win 7.My test was in XP, VS 2008. I didn't investigate too deeply, but the test was just a form with a TextBox--no logic.
I didn't delve too deeply either; just a form with two textboxes and a button (no code). It's possible that placing a different type of control on the form could be causing this issue.
ASKER
OK I tested and found if I make a test form with two textBoxes, and both textBoxes are Multiline text boxes, then CTRL-A doesn't work for either textbox. I wonder why that is?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
OK I worked around it for now using your ideas thank you for the help.