我有一个Repeater 控件,可以在页面上输出各种论坛帖子。
在每个中继器行中,我有一个 LinkButton 和 4 个包含值的文本框。
当我单击其中一个链接按钮时,在我的事件处理程序代码中,我想获取与该特定转发器项/行相对应的 4 个文本框中的每一个中的值。
我可以重复转发器中的每个项目,但我只对位于单击/触发事件的 LinkButton 旁边的 4 个文本框中存在的值感兴趣。我对属于转发器中其他行/项目的任何文本框值都不感兴趣。
最好的方法是什么?
您可以使用与ItemCommand
事件和e.Item.FindControl
链接:http: //msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.repeater.itemcommand.aspx
protected void Repeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if(e.CommandName == "YourCommand" ) //Adjust your CommandName
{
var textbox1 = (TextBox)e.Item.FindControl("YourIdTextBox1"); //Adjust your Id of TextBox in row
var textbox2 = (TextBox)e.Item.FindControl("YourIdTextBox2");
var textbox3 = (TextBox)e.Item.FindControl("YourIdTextBox3");
var textbox4 = (TextBox)e.Item.FindControl("YourIdTextBox4");
....
}
}