Skip to content Skip to sidebar Skip to footer

How Simulate Ctrl+v Keystrokes (paste) Using C#

How can we simulate CTRL+V keys (paste) using C#? I have a textbox that hasn't a id for access, for example textbox1.Text = someValue won't work here. I want to fill that textbo

Solution 1:

Character vs key

% => alt , + => shift and ^ for to send ctrl key

Original Answer:

Simulation of single modifier key with another key is explained below Step1: Focus the textBox, on which you want to perform two keys and then Step2: send the key for example control-v will be sent like "^{v}". Here is the code

target_textBox.Focus();
SendKeys.Send("^{v}");

target_textBox.Focus(); is needed only when target textbox is not focused at the time of sending key

Update: For sending three keys (two modifying keys plus other key) like to achieve ctrl shift F1 you will send following

^+{F1}

Microsoft Docs Ref

Solution 2:

Why don't you override the TextBox OnClick event than when the event is called, set the Text property to Clipboard.GetText()

Like:

privatevoidtextBox1_Click (object sender, EventArgs e )
{
        textBox1.Text = Clipboard.GetText ();
}

Solution 3:

This function is already built in: TextBoxBase.Paste()

textbox1.Paste();

Solution 4:

some JS do not permit to change value in usual way

inputList[21].SetAttribute("value", txtEMail.Text);

you should try something like this:

inputElement.InvokeMember("focus");
inputElement.InvokeMember("click"); //sometimes helpfull
Clipboard.SetDataObject(txtEMail.Text);
SendKeys.Send("^(v)");

//but not "^{v}"

Post a Comment for "How Simulate Ctrl+v Keystrokes (paste) Using C#"