2012-02-14 3 views
0

У меня есть пользовательский контроль popup на главной странице, после входа в систему Я хочу, чтобы другой пользовательский контроль на странице содержимого появлялся автоматически, в настоящее время он появляется только в том случае, если я вручную обновляю страницу. Как это можно сделать. Благодарю.Сделать UserControl видимым после входа в систему

MasterPage -> Войти UserControl

View.aspx -> закладка UserControl (появится после входа в систему)

Войти UserControl в мастер-странице

<asp:UpdatePanel ID="login" runat="server" UpdateMode="Conditional">  
      <ContentTemplate>  
       <asp:Panel ID="pnlLogin" runat="server"> 
     <asp:TextBox ID="txtpassword" runat="server" TextMode="Password </asp:TextBox> 
     <asp:Button ID="btbookmark" runat="server" Text="Login" OnClick="btbookmark_Click"/> 
      </asp:Panel> 
    <asp:Panel ID="pnlData" runat="server">Placeholder for bookmark data. Bookmark data goes here. 
</asp:Panel> 
    </ContentTemplate> 
    </asp:UpdatePanel> 

Закладка UserControl на View.aspx

<asp:TextBox ID="txtbookmark" runat="server"></asp:TextBox><br /> 
<asp:Button ID="btmark" runat="server" /> 

После входа в систему, как может пользователь Bookmark появится контроль над View.aspx. Нужно ли использовать панель обновления?

ответ

0

Вы можете зарегистрировать его и установить для свойства Visible значение false в коде позади, пока пользователь не войдет в систему, а затем вы установите для свойства значение true. Вам нужно будет добавить код, чтобы предотвратить большую обработку, если объект сеанса пользователя не существует.

ASPX:

<%@ Register TagPrefix="control" TagName="UserBookmarks" Src="~UserBookmarks.ascx" %> 
<control:UserBookMarks ID="UserBookmarksCtrl" runat="server" Visible="false" /> 

код позади:

// If user logged in 
UserBookmarksCtrl.Visible = True 

Или, вы можете динамически создать элемент управления, и добавить его на страницу, когда пользователь вошел в систему (то есть что-то вроде сессии [ «пользователь»] установлен).

+0

Как можно управлять закладкой при обновлении страницы? – Aaron

+0

@Aron Возможно, что код позади проверяет! IsPostBack перед установкой свойства Visible to true. Кроме того, имейте в виду жизненный цикл страницы и автоматически проводные события, такие как Page_Load, Page_LoadComplete, Page_PreRender и т. Д. Обычно они вызываются по порядку: страница, главная страница, пользовательский контроль на странице, пользовательские элементы управления на главной странице. Кроме того, события, связанные с элементами управления, зависят от порядка отображения элементов управления на данной странице. Без просмотра кода трудно определить, что происходит. – Candide

+0

Это похоже на мою проблему. Пользовательский контроль входа в masterpage, который создает сеанс, выполняется после элемента управления закладкой страницы, который я хочу изменить, чтобы изменить на видимый. Предложения? – Aaron

Смежные вопросы