在asp.net中隐藏链接

时间:2009-11-10 01:39:44

标签: asp.net hyperlink

在以下master.cs代码中:

public partial class Default : System.Web.UI.MasterPage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        BasePage page = (BasePage)Page;

        if (page.CurrentUser != null)
        {
            lblCurrentUser.Text = "<strong>" + page.CurrentUser.FullName + "</strong> - " + page.CurrentUser.CompanyName;

            if ((Session["CCFUser"] != null) && (bool.Parse(Session["CCFUser"].ToString()) == true))
            {
                ctrlLinkBar.AddLink("Issues Management", "AllIssues.aspx");
            }
            else
            {
                if (true) ctrlLinkBar.AddLink("Home", "Default.aspx");
                if (page.CurrentUser.Permissions.Issues()) ctrlLinkBar.AddLink("Issues Management", "AllIssues.aspx");
                if (page.CurrentUser.Permissions.Time()) ctrlLinkBar.AddLink("Time Management", "TimeEntryForm.aspx");
                if (page.CurrentUser.Permissions.Time()) ctrlLinkBar.AddLink("Time Filter", "TimeFilter.aspx");
                if (page.CurrentUser.Permissions.SVN() && !(this.Page is _Default)) ctrlLinkBar.AddLink("SVN", "SVN.aspx");
                if (true) ctrlLinkBar.AddLink("Profile", "ChangePassword.aspx");
                if (page.CurrentUser.Permissions.Administration()) ctrlLinkBar.AddLink("Administration", "Administration.aspx");
            }

        }
        else lnkLogout.Visible = false;
    }
    protected void lnkLogout_Click(object sender, EventArgs e)
    {
        Session.Abandon();
        FormsAuthentication.SignOut();
        Response.Redirect("Login.aspx");
    }
}

我需要隐藏“时间过滤器”链接,因此它不会出现在任何网络内容表单上。 它没有身份证,所以我无法解决它。我怎么去隐藏呢?

3 个答案:

答案 0 :(得分:0)

如何编辑Master.cs以不添加它,或者仅在某些时候添加它?

如果这不起作用,那么你需要给我们更多的背景。

答案 1 :(得分:0)

为什么不让ctrlLinkBar.AddLink在其构造函数中获取Id并使用Id创建链接?

ctrlLinkBar.AddLink("TimeFilterId", "Time Filter", "TimeFilter.aspx");

然后,您的内容页面或其他任何内容都可以找到并在需要时隐藏。

答案 2 :(得分:0)

我错过了什么吗?为什么不删除该行?

if (page.CurrentUser.Permissions.Time()) 
  ctrlLinkBar.AddLink("Time Filter", "TimeFilter.aspx");