2013-03-01 38 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 .......... 
}