[英]One Event Handler for multiple text boxes which assign to different strings
我的視圖有70個左右的文本框。 我正在使用一個對象存儲所有輸入,以便可以在程序周圍傳遞輸入。 我現在擁有的是一個保存按鈕,當按下此按鈕時,每個文本框會將其文本發送到保存所有輸入的對象。
我想更改此實現,以使文本框在光標離開文本框后將其文本發送給對象。 我只是不想為每個文本框編寫一個事件處理程序。
該站點說明了如何將多個文本框分配給一個事件處理程序。 如果每個事件都需要執行相同的操作,則此方法有效。 他們是否可以將多個文本框分配給一個事件句柄,但讓每個文本弓將其內容上傳到不同的字符串?
我什么都沒想,所以我問大家是否有想法。
謝謝,
dhoehna
使用Dictionary< TextBox, string >
甚至Dictionary< object, string >
並使用sender
對象作為鍵來獲取要分配給該字符串的字符串。
您可以使用字典輕松地做到這一點:
textBox1.LostFocus += new EventHandler( textBox_LostFocus );
Dictionary<object, string> _contents = new Dictionary<object, string>( );
void textBox_LostFocus( object sender, EventArgs e ) {
_contents[ sender ] = ( sender as TextBox ).Text;
}
並以列表的形式獲取值(如果需要):
_contents.Select( kvp => kvp.Value ).ToList( );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.