Asp.net 在.NET控件上设置可见属性
这里是.NET新手 我有一个有很多章节的页面。我想创建另一个页面,使其具有指向此页面的超链接,以及指向其中各部分的超链接 如果用户单击了主页链接,我希望所有部分都可见,但如果用户单击了部分超链接,则仅显示用户请求的部分 如何从上一页的链接设置未请求控件(在asp:Panel中)的visible属性,使它们在请求其他节时不会显示在页面上 许多tiaAsp.net 在.NET控件上设置可见属性,asp.net,dynamic,Asp.net,Dynamic,这里是.NET新手 我有一个有很多章节的页面。我想创建另一个页面,使其具有指向此页面的超链接,以及指向其中各部分的超链接 如果用户单击了主页链接,我希望所有部分都可见,但如果用户单击了部分超链接,则仅显示用户请求的部分 如何从上一页的链接设置未请求控件(在asp:Panel中)的visible属性,使它们在请求其他节时不会显示在页面上 许多tia mcalex您可以检查请求.ServerVariables[“HTTP\u REFERER”] 但是,如果用户刷新页面,这将更改。您有以下选项 将每个
mcalex您可以检查
请求.ServerVariables[“HTTP\u REFERER”]
但是,如果用户刷新页面,这将更改。您有以下选项
Response.Redirect("~/myPage.aspx?secId=info")
Visibility=false
insidepageload检查querystring值并将面板的Visibility属性设置为true或false
if(!Page.IsPostBack)
{
string panelToEnable= Request.QueryString["secId"];
switch(panelToEnable)
{
case("info"):
panelInfo.Visible=true;
break;
case("details");
panelDetails.Visible=true;
break;
default:
panelMaster.Visible=true;
break;
}
}
或者,您可以将部分链接放在重定向页面内,并进一步简化内容(删除查询字符串等)。您有两种方法来解决此问题:
- 第一种解决方案可用于纯HTML链接,但参数显示在查询字符串中,因此用户可以将其更改为显示其他部分
- 第二种解决方案不能用于纯HTML链接,但它可以防止用户在会话状态下更改值。所以它更安全