2011-08-16 21 views
1

usercontrolでスタイル属性が機能しないのはなぜですか?usercontrolのスタイルが機能しない

これは私のコードです:

<uc1:ucCredit runat="server" ID="ucCCard" style="display:none;" /> 

注:私はVisible=falseを設定する必要はありません。これを行うと、要素をレンダリングすることはできません。なぜなら、スタイルを操作していて、javascriptを使って表示しているからです。事前に

おかげで:)

答えて

7

のUserControlは、私の知る限りではstyle性質を持っていません。簡単な修正は<span/>または<div/>にあなたのusercontrolをラップし、それに適切なIDを与えてからjavascriptで操作することです。

+0

@JagguそれはPlaceHolderコントロールによく似ています。それは機能性のサーバー側がたくさんありますが、クライアント側では、タグ自体はHTMLを表示しません。したがって、クライアント側の属性はありません。 –

0

usercontrolがHTML要素としてレンダリングされないため、そこにstyle属性を使用することはできません。 divにラップすることをお勧めします。

<div style="display:none;"> 
    <uc1:ucCredit runat="server" ID="ucCCard" /> 
</div> 
1

<uc1:ucCredit>タグが描画されていないため、これは機能しません。

もう一つのアイデアは、このような何か置くことかもしれません

divが巻き付けられdivである。この例では

Public Display as String 

Sub Page_Load() 
    If Not Display = Nothing then 
     div.attributes("style") = string.format("display:{0};", display) 
    End IF 
End Sub 

マークアップ:

<uc1:ucCredit runat="server" ID="ucCCard" Display="none" /> 

VB.NETをユーザーコントロール内のコンテンツ

0

よあなたがコントロールが表示されているかどうかを識別し、パネルにすべてのコントロールを配置し、その表示をnoneに設定する必要があるかどうかを識別するプロパティをユーザーコントロールに作成できます。

関連する問題