gpt4 book ai didi

c# - 在 page_load 上传递内容页上的母版页控件值

转载 作者:行者123 更新时间:2023-11-30 22:15:47 27 4
gpt4 key购买 nike

我在母版页上有一个下拉列表,我想在加载内容页时传递内容页上的选定值。我的问题是,只有当我更改下拉列表中的值时,该值才会传递。因此,当页面加载时,我必须从下拉列表中重新选择以捕获下拉列表的值。如果我正在浏览内容页面,则所选值不会在页面加载时传递。我的母版页代码 .net:

<asp:DropDownList ID="ddlcategories" 
runat="server" DataSourceID="SqlDataSourcecategories" DataTextField="CategoryName"
DataValueField="CategoryID" AutoPostBack="True"
onselectedindexchanged="ddlcategories_SelectedIndexChanged"></asp:DropDownList>

母版页:

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlcategories.DataBind();
ddlcategories.Items.Insert(0, "Uncategorized");
ddlcategories.Items[0].Value = "0";
ddlcategories.SelectedValue = Convert.ToString(Session["lblCategoryID"]);
}
}
protected void ddlcategories_SelectedIndexChanged(object sender, EventArgs e)
{
Session["lblCategoryID"] = Convert.ToInt32(ddlcategories.SelectedValue);
}

内容页cs:

protected void Page_Load(object sender, EventArgs e)
{
Label10.Text = Convert.ToString(((DropDownList)Master.FindControl("ddlcategories")).SelectedValue);
}

最佳答案

试试这个解决方案:

母版页:

<asp:DropDownList ID="ddlcategories" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddlcategories_SelectedIndexChanged">
<asp:ListItem>One</asp:ListItem>
<asp:ListItem>Two</asp:ListItem>
</asp:DropDownList>

母版页 CS:

public string SelectedValue
{
get
{
return ddlcategories.SelectedValue;
}
set
{
ddlcategories.SelectedValue= value;
}
}

protected void ddlcategories_SelectedIndexChanged(object sender, EventArgs e)
{
SelectedValue = ddlcategories.SelectedValue;
}

内容页面标记:

<%@ MasterType VirtualPath="~/Site1.Master" %>

<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

内容页CS。

protected void Page_PreRender(object sender, EventArgs e)
{
Label1.Text = Master.SelectedValue;
}

注意:值只是为了演示,您可以在下拉列表中使用实际的数据源值。

关于c# - 在 page_load 上传递内容页上的母版页控件值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17783165/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com