Button 和 DropDownList 使用 ASP.NET 中的 Session/Application 变量,C#
Button and DropDownList using Session/Application Variable in ASP.NET, C#
我将如何实现这种情况?我在默认页面上有两个按钮,Button1 和 Button2。如果单击 Button1,则第二页上的 DropDownList 的内容将是:a、b 和 c。但是,如果从默认页面单击 Button2,则第二页上的 DDL 内容将为:d 和 e。谢谢!
如果您使用的是 ASP.NET WebForms,您可以在第一页中填充一个 Session 变量,在单击任一按钮时确定内容。然后我会将 DropDown 列表的数据源设置为 Session 变量。像这样:
第 1 页:
protected void Button1_Click(object sender, EventArgs e)
{
Session["ListSource"] = new List<string>
{
"a",
"b",
"c"
};
}
protected void Button2_Click(object sender, EventArgs e)
{
Session["ListSource"] = new List<string>
{
"d",
"e"
};
}
第 2 页:
protected void Page_Load(object sender, EventArgs e)
{
DropDownList1.DataSource = (List<string>)Session["ListSource"];
DropDownList1.DataBind();
}
在 MVC 中,您可以让控制器操作生成列表并将其作为模型提供给您的第二个页面。不过,鉴于您指的是 DropDownList,听起来您正在使用 WebForms。
我将如何实现这种情况?我在默认页面上有两个按钮,Button1 和 Button2。如果单击 Button1,则第二页上的 DropDownList 的内容将是:a、b 和 c。但是,如果从默认页面单击 Button2,则第二页上的 DDL 内容将为:d 和 e。谢谢!
如果您使用的是 ASP.NET WebForms,您可以在第一页中填充一个 Session 变量,在单击任一按钮时确定内容。然后我会将 DropDown 列表的数据源设置为 Session 变量。像这样:
第 1 页:
protected void Button1_Click(object sender, EventArgs e)
{
Session["ListSource"] = new List<string>
{
"a",
"b",
"c"
};
}
protected void Button2_Click(object sender, EventArgs e)
{
Session["ListSource"] = new List<string>
{
"d",
"e"
};
}
第 2 页:
protected void Page_Load(object sender, EventArgs e)
{
DropDownList1.DataSource = (List<string>)Session["ListSource"];
DropDownList1.DataBind();
}
在 MVC 中,您可以让控制器操作生成列表并将其作为模型提供给您的第二个页面。不过,鉴于您指的是 DropDownList,听起来您正在使用 WebForms。