asp.net中的主页和内容页面?

时间:2010-09-24 09:27:55

标签: .net asp.net

在我的网页应用程序中我正在使用母版页概念,在母版页面我有登录面板使用此用户可以登录,登录后登录面板将不可见,链接按钮将显示为注销,它工作正常,但在一个子页面(内容页面)我有登录的登录面板,在更新面板中,当用户在主页面登录面板中成功登录仍然可见时,它不是可见的,当我页面刷新然后登录面板不可见和注销链接按钮visibling。当我在子页面登录时,母版页中的登录面板也不可见,并且注销链接按钮会在这种情况下可以帮助我,谢谢。这是代码:

SqlDataAdapter  da = new SqlDataAdapter("select * from xxx where (userid=@UserName or emailid=@UserName) and password=@Password", con);
da.SelectCommand.Parameters.AddWithValue("@UserName", txtUserId.Text);
da.SelectCommand.Parameters.AddWithValue("@Password", txtPassword.Text);
DataSet ds = new DataSet();
da.Fill(ds, "Login");
int i = ds.Tables["Login"].Rows.Count;
if (i == 1)
{
    LinkButton lnklogout = (LinkButton)Master.FindControl("LinkLogout");
    lnklogout.Visible = true;
    LinkButton linkmypro = (LinkButton)Master.FindControl("lnkbtnMyProfile");
    linkmypro.Visible = true;

    LinkButton linsynup = (LinkButton)Master.FindControl("lbtnSignUp");
    linsynup.Visible = false;
    Panel pnllogon = (Panel)Master.FindControl("LogonPanel");
    pnllogon.Visible = false;
}

2 个答案:

答案 0 :(得分:2)

你快到了!您需要告诉母版页中的updatepanel自行更新

UpdatePanel t = (UpdatePanel)Master.FindControl("UpdatePanel1");
t.Update();

我认为您还需要在updatepanel

中将UpdateMode设置为“Conditional”

不要忘记在母版页中使用类似的代码,如果此人使用母版页的登录控件登录,则子页面也应该更新。

祝你好运!

修改

抱歉,我忘了提到你肯定需要在登录控件的主页面上有一个updatepanel。否则这将无效

答案 1 :(得分:0)

你的问题不是很清楚。根据我的理解,您需要能够从内容页面禁用和启用母版页上的控件?如果是this might help

除了你如何启用/禁用?它在IsPostBack中是否有机会?这将 解释为什么它只在刷新页面后才有效。当您使用更新面板时,它将单独更新到其周围的页面(其AJAX),因此这可能是您问题的一部分。

除此之外,请发布一些代码。