2016-05-05 14 views
0

ここには取引があります。私は、データベース内のテーブルによって制御される、ユーザインタフェース上に表示したかったり、表示したくないいくつかの要素を持っています。したがって、私が格納している値に基づいて、コントロールをユーザーに表示するかどうかを指定します。これに対処するために、私はページ上で使用しているすべてのコントロールを配置し、パネルの内側に一意のIDを入れて、コード内のpanelname.visible = true/falseで対処できるようにしました。asp:パネルが背後にあるコードから目立たない

このコードビハインド構造を構築する前に、asp.netページのパネルに属性を追加してその効果をテストしましたが、私は結果に満足していました。

私はコードを使ってテストしました。だから私は残りを作り、それを試して突然それは動作しませんでした!

ここで私はあなたが何か間違っているかどうかを教えてくれます!私はパネルが隠れているはずですが、参照boolはDBからFalseではありません。

ASP.NETコード:コードの後ろ

<asp:Panel runat="server" ID="Sys1pnl" > 
    <asp:CheckBox runat="server" ID="SysChkBX1" Value="AIX 6.1" Text="&nbsp;AIX 6.1" BackColor="DeepSkyBlue" Font-Size="X-Small" /> 
    <br /> 
</asp:Panel> 

コード:

if (ElementsVal.AIX_6_1 == true) 
    Sys1pnl.Visible = true; 
    else 
    Sys1pnl.Visible = false; 

すべての場合において、パネルと内容は(見えない)、彼らは隠されるべきにもかかわらず、表示されたまま。

ご意見は大変ありがとうございます。 ケン...

+0

「ElementsVal.AIX_6_1」とは何ですか? –

答えて

0

CheckBoxに保存されている値を実際に確認しますか?

その場合は、その後、あなただけのValueプロパティを使用することができ、それはあなたの条件を満たしているかどうかを確認し、それに応じて非表示:

まあ
// This will show/hide your panel based on if the value of your Checkbox is "AIX 6.1" 
Sys1pnl.Visible = (SysChkBX1.Value == "AIX 6.1"); 
+0

このチェックボックスは、チェックボックス自体が表示されているかどうかを制御しません。制御するマトリックスは、別のページの別のパネルで管理されます。これを掲示した後、私は戻ってきて、1つのセクションワークと3つのセクションワークを持っていることに気が付かなかったので、私は3つのものを混乱させました。私がこれを書いていたときに、2つのテーブル(値チェックを保持しているものとチェックしていないものと、どのパネルが表示されているものかを示すもの)がここで混乱しました。 –

0

それはあなたの他のロジックを追加する前に働いていたので、意味共有したコードに間違いはありません。 最新の変更を元に戻し、機能を追加して問題の原因となっている機能を確認することをお勧めします。

もう1つのアイデアは、ページのJavascriptデバッガーがブラウザからページを検査していないことを確認することです。 htmlでエラーが発生すると、そこにエラーが表示されます。

関連する問題