只需将两行代码放入同一个 Button Click Handler 函数中
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=static 添加隐藏输入
<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 = "..." 的字符串变量来代替上面的隐藏字段方法。