2013-03-01 54 views
1

我想要获得一个按钮,它将一个特定的字符输入到两个不同的文本框中,我使用的代码只能让我输入到一个文本框中。现在,我真的很新的这一切使裸露的我,感到自由,只要你帮笑:P将文本分配给多个文本框

private void btn9_Click(object sender, EventArgs e) 
{ 
    txtBox1.Text = txtBox1.Text + btn9.Text; 
} 

我希望能够有btn9_Click也对工作有什么会被人认为:

private void btn9_Click(object sender, EventArgs e) 
{ 
    txtBox2.Text = txtBox2.Text + btn9.Text; 
} 
+2

你说的 “C#的Visual Basic 2012” 是什么意思? – 2013-03-01 04:42:35

+0

Visual Basic?伙计,代码是C# – 2013-03-01 04:43:26

+1

你知道你可以在一个方法中有多行代码,对吧? – 2013-03-01 04:43:46

回答

1

只要把两行代码到同一个按钮单击处理函数

private void btn9_Click(object sender, EventArgs e) 
{ 
    txtBox1.Text = txtBox1.Text + btn9.Text; 
    txtBox2.Text = txtBox2.Text + btn9.Text; 
} 

事实上,你可以有上百个函数中的代码行。为了便于阅读,通常最好保持在100以下。

更新2

为了让按钮指定文本为准功能最近有集中

该解决方案使用jQuery来更新每当一个文本框的重点是一个隐藏的输入值(接收用户注意)。该解决方案使用ClientIDMode =“Static”,以便jquery能够引用正确的元素。

在你的ASPX页面标题,添加脚本标签应用我们的jQuery

<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/jquery-ui.min.js"></script> 

<script> 
    $("#TextBox1").focus(function() { 
    $('#MyHiddenInput').val('TextBox1'); 
    }); 

    $("#TextBox2").focus(function() { 
    $('#MyHiddenInput').val('TextBox2'); 
    }); 
</script> 

在你的ASPX页面表单中,添加具有的ClientIDMode一个隐藏的输入=静态

<asp:HiddenField id="MyHiddenInput" runat="server" ClientIdMode="Static" Value="TextBox1" /> 

现在,将您的文本框更改为让clientIdMode =“Static”

<asp:TextBox id="TextBox1" runat="server" clientIdMode="Static" /> 
<asp:TextBox id="TextBox2" runat="server" clientIdMode="Static" /> 

**最后,在你的代码隐藏,你可以用这样的代码来找出哪些文本最近具有焦点

if (MyHiddenInput.Value == "TextBox1"){ 
    // Write to TextBox1 
}else{ 
    // Write to TextBox2 
} 

或者,如果你在VB窗体这样做,你可以处理TextBox.GotFocus事件,并设置名为LastTextboxFocus =“...”的字符串变量来代替上面的隐藏字段方法。

+0

好的谢谢大家的答复,虽然我已经尝试过,当我运行该程序,我按btn9同样的事情出现在两个文本框。我想要的是一种按btn9一次的方法,它出现在txtbox1中并突出显示txtbox2并能够按btn9一次以获得相同和/或不同的示例btn8 – 2013-03-01 04:53:48

+0

有关如何调试问题的想法,请参阅我的更新。我更新的建议将尝试将“ABC”放入一个文本框中,将“123”放入另一个文本框中。如果你成功了,你可能会开始了解为什么相同的文本与你的原始代码一起进入你的两个文本框。 – 2013-03-01 04:59:30

+0

我看到你说什么,但我的目标是有一个输入按钮,只有当你突出显示两个文本框中的一个,当你按下btn9_click时它显示的方式它会自动填充ABC和123,我希望它做一个选择性的过程,在那里我选择txtbox1并按btn9得到ABC/123,并且选择txtbox2并按btn9得到ABC/123 – 2013-03-01 22:21:57

1

你的事件处理程序中可以有多个行:

private void btn9_Click(object sender, EventArgs e) 
{ 
    txtBox1.Text = txtBox1.Text + btn9.Text; 
    txtBox2.Text = txtBox2.Text + btn9.Text; 
} 
+0

有多个行是问题的问题是什么时,我按下该按钮,它输入相同信息一次放入两个文本框中我想要一个事件,等待我突出显示该文本框,然后再决定要输入信息的文本框 – 2013-03-01 22:35:58

0
private void btn9_Click(object sender, EventArgs e) 
{ 
    txtBox1.Text = txtBox1.Text + btn9.Text; 
    txtBox2.Text = txtBox2.Text + btn9.Text; 
    txtBox3.Text = txtBox3.Text + btn9.Text; 
    //for Any number textboxes, u can add text .......... 
} 
相关问题