2016-07-27 7 views
1

私が持っているcheck.aspxファイルがあります:他のaspxページで隠されているマスターファイルから来るdivを設定するには?

<%@ MasterType VirtualPath="~/MSW.master" %> 

を私は持っている。このマスターファイルに:

<div id="status_box_content"> 
    <asp:Label ID="lblWelcome" runat="server" Text="Welcome " ></asp:Label>        
    <asp:Label ID="lbUser" runat="server"meta:resourcekey="lblFullNameResource1"></asp:Label> 
    <asp:Label ID="lblPartnerInfo" runat="server" ></asp:Label> 
    <asp:HyperLink Font-Underline="False" NavigateUrl="~/profile/Logout.aspx" 
    ID="HLinkLogout" runat="server" meta:resourcekey="HLinkLogoutResource1">Logout</asp:HyperLink> 
</div> 

<%@ Register Src="UserControls/Common/StatusBar.ascx" TagName="StatusBar" TagPrefix="uc3" %> 

そしてこのStatusBar.ascxで、私はdiv要素を持っています

id ="status_box_content"でこのdivをcheck.aspxファイルに表示しないようにします。しかし、マスターファイルからのすべてのものが必要です。

マスターファイルを保持しているときにdivを非表示にするにはどうすればよいですか?

+0

: まず、サーバーコントロールとしてのdivを作るdivrunat="server"を追加:あなたはこれを試してみることができます。それは完璧に正常に動作します。私はそれを呼んでいる間に巨大な間違いをしていた。ええ、それは動作します! :) –

+0

@ ShurtiAgrawal、あなたの答えをアップロードし、それがUnansweredから削除されるように受け入れてください。 –

答えて

1

jqueryのを使用してのdivを非表示にします。それは完璧に正常に動作します。私はそれを呼んでいる間に巨大な間違いをしていた。ええ、それは動作します! :) UserControlUser Controlはちょうどそのdivを見つけると、それが見えないよう、あなたのページの最初のアクセスUserControlにしようと、内部Master Pageある内divとして

+0

コードブロックを追加することで、今後他の人に役立つかもしれません。 –

0

注:あなたのdivにrunat = "サーバー"

ASPXページページの後ろ

<div id="status_box_content" runat="server"> 
    <asp:Label ID="lblWelcome" runat="server" Text="Welcome " ></asp:Label>     <asp:Label ID="lbUser" runat="server"meta:resourcekey="lblFullNameResource1"></asp:Label> 
    <asp:Label ID="lblPartnerInfo" runat="server" ></asp:Label> 
    <asp:HyperLink Font-Underline="False" NavigateUrl="~/profile/Logout.aspx" 
    ID="HLinkLogout" runat="server" meta:resourcekey="HLinkLogoutResource1">Logout</asp:HyperLink> 
    </div> 

コードを作成します。あなたのコンテンツのPage_Loadイベントにこのコードを入れて

HtmlGenericControl DivCount = (HtmlGenericControl)Page.Master.FindControl("status_box_content"); 
DivCount.Visible = false; 
+0

これを行うと、以下のようなエラーが表示されます。 ** "パーサーエラーメッセージ:コンテンツコントロールのみがコンテンツコントロールを含むコンテンツページに許可されています" ** –

+0

更新された回答を試すと、 **例外の詳細:System.NullReferenceException:オブジェクト参照がオブジェクトのインスタンスに設定されていません** –

+0

あなたが試したことの完全なコードを入力してください。マスターページのHTMLとコンテンツページのコード。 –

0

あなたの部門にrunat= serverを作りなさい。

そしてcheck.aspx使用のページのロードにそれが見えないDIVます、あなたのcheck.aspxで

this.Master.findcontrol("divname").visible= false; 
0

です。あなたのcheck.aspxでは、jqueryのを使用してDIVを隠す:私はこれに**ソリューション**を見つけ

<div id="status_box_content" runat="server"> 

    UserControl uc = ((UserControl)this.Master.FindControl("ucTopUser")); 
    HtmlGenericControl div = (HtmlGenericControl)uc.FindControl("status_box_content"); 
    div.Visible = false; 
関連する問題