おはようユーザーコントロールのリテラルテキストを変更VB.Net
私はVB.Netプロジェクトを持っています。 私のメインページはDisplay.aspxです 私はこのページを使用する様々なユーザーコントロール(ascx)を持っています。 これらのコントロールの1つに、Literal、lblCatQuestionがあります。制御
Protected WithEvents lblCatQuestion As Literal
の背後にあるコードで は何、このリテラルは基本的に行うことは、それはいくつかのテキストやラジオボタンでアップロードしています。ラジオボタンをクリックすると、Jqueryフォームがポップアップします。フォームを完了して保存して閉じると、このリテラルにメッセージが表示されるはずです。 メッセージは、私がデバッグするとき、私は常に代入しようとNullReferenceExceptionを取得しているDisplay.aspx.vb
Session("CatMessage") = "Completed"
Dim label As System.Web.UI.WebControls.Literal = New System.Web.UI.WebControls.Literal
label = DirectCast(Page.FindControl("lblCatQuestion"), System.Web.UI.WebControls.Literal).Text = Session("CatMessage")
問題で、ここでの目的のために
背後にある主な表示ページのコードから来ていますリテラルへのテキスト私が見たとき 、こちらのページを
としてではなく、私のURLに記述されている、ページがある
Display.aspx?PID = 4
これはnull参照例外を引き起こす可能性がありますか?ページは正確にDisplay.aspxではなく、Display.aspx?pid = 4
リテラルのテキストはどのように変更できますか? テキスト値を変更できるように、正確なページをどのように取得できますか?助けのための
おかげ
EDIT
これは
If Not Session("CatMessage") Is Nothing Then
lblCatQuestion.Text = Session("CatMessage")
End If
の背後にあるコントロールのコードで宣言されているが、テキストは変更されません。したがって、なぜ私は別の方法を検討しているのですか?
私はこれを試しました。まだ仕事がありませんでした。私が以前に持っていたことは、セッション( "CatMessage")が何もない場合 lblCatQuestion.Text =セッション( "CatMessage") 終了しかし、それはラベルをリフレッシュしませんでした。私が別の方法を試している理由 –