C# 如何将参数从一个页面传递到另一个页面?
我有以下代码:C# 如何将参数从一个页面传递到另一个页面?,c#,asp.net,events,C#,Asp.net,Events,我有以下代码: public partial class _Default : System.Web.UI.Page { List<GlassesCollection> gc= BL.Example.GetCategory() ; protected void Page_Load(object sender, EventArgs e) { rpt1.DataSource = gc; rpt1.DataBind();
public partial class _Default : System.Web.UI.Page
{
List<GlassesCollection> gc= BL.Example.GetCategory() ;
protected void Page_Load(object sender, EventArgs e)
{
rpt1.DataSource = gc;
rpt1.DataBind();
}
protected void rpt1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Button btn = (Button)e.Item.FindControl("btn1");
btn.CommandArgument = DataBinder.Eval(e.Item.DataItem,"CollectionID").ToString();
}
}
public分部类\u默认值:System.Web.UI.Page
{
List gc=BL.Example.GetCategory();
受保护的无效页面加载(对象发送方、事件参数e)
{
rpt1.DataSource=gc;
rpt1.DataBind();
}
受保护的void rpt1_ItemDataBound(对象发送方,RepeaterItemEventArgs e)
{
按钮btn=(按钮)e.Item.FindControl(“btn1”);
btn.CommandArgument=DataBinder.Eval(例如Item.DataItem,“CollectionID”).ToString();
}
}
我想将btn.CommandArgument的内容传递到另一个ASPX.CS文件中的标签事件。
有什么方法可以实现这一点吗?
提前谢谢你 您可以使用。例如,您的url可以如下所示:
string url = String.Format("http://www.example.com/somepage.aspx?labeltext={0}",btn.CommandArgument);
然后,在somepage.aspx
中,您可以:
//"labeltext" is the same name we used above as the ID
string lblText = Request.QueryString["labeltext"];
if (lblText != null)
{
myLabel.Text = lblText;
}
如果文本可能不适合传入URL,则可以使用对其进行编码,然后在将其分配给标签之前对其进行解码。您需要使用会话。在会话中输入值并在另一页中读取
Session["key"]=value;
使用查询字符串进行以下操作:
Response.Redirect("AnotherPage.aspx?CommandArgument=SomeArgument");
然后阅读另一页.aspx上的查询字符串
string commArgument = Request.QueryString["CommandArgument"];
嗯,有很多方法可以将参数传递给其他页面,通过get方法“?param=value¶m2=value2”等发送,或者存储在会话对象或应用程序对象中,甚至使用静态类/对象存储从页面传递给其他页面的参数。实现基本上取决于您所使用的应用程序的体系结构。如果跨页面发布是一个选项,您可以查看以下内容: