我有一个Repeater控件,可以在页面上输出各种论坛帖子。
在每个转发器行中,我有一个LinkButton和4个包含值的TextBox。
当我点击其中一个LinkButtons时,在我的事件处理程序代码中,我想获取与该特定转发器项目/行对应的4个TextBox中的每一个中的值。
我可以重复转发器中的每个项目,但我只对4个文本框中存在的值感兴趣,这些文本框位于被点击/触发事件的LinkButton旁边。我对转发器中其他行/项目的任何Textbox值都不感兴趣。
最好的方法是什么?
答案 0 :(得分:1)
您可以使用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");
....
}
}