0

我有一个有 70 个左右的文本框的视图。我正在使用一个对象来存储所有输入,这样我就可以在我的程序中传递输入。我现在拥有的是一个保存按钮,当按下此按钮时,每个文本框都会将其文本发送到包含所有输入的对象。

我想更改此实现以使文本框在光标离开文本框后将其文本发送到对象。我只是不想为每个文本框编写一个事件处理程序。

站点解释了如何将多个文本框分配给一个事件处理程序。如果每个事件都需要做同样的事情,这很有效。他们是一种将多个文本框分配给一个事件句柄但让每个文本弓将其内容上传到不同字符串的方法吗?

我什么都想不出来,所以想问问大家有没有什么想法。

谢谢,

多纳

4

2 回答 2

3

有一个Dictionary< TextBox, string >或什Dictionary< object, string >至并使用sender对象作为键来获取要分配的字符串。

于 2013-09-06T21:17:43.720 回答
2

您可以使用字典轻松完成:

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( );
于 2013-09-06T21:18:49.200 回答