aspx Masterpagesコンテンツページに非表示フィールドコントロールとリンクボタンを設定しました。MasterPagesを使用するときにRequest.Formを使用して値を取得する方法
<asp:HiddenField ID="HiddenField1" runat="server" value='<%# Eval("ID") %>'/>
<asp:LinkButton ID="LinkButton1" runat="server" postbackurl="orderhistorydetail.aspx">View</asp:LinkButton>
このコードを使用してポストバックページ上の値を取得しようとしている ...
string oid = Request.Form[HiddenField1];
私はエラーを取得しています...
名 'HiddenField1' はありません現在のコンテキストには存在しません。
これはmaterpagesのためですか?これをどうすれば解決できますか?私はその上のHiddenFieldコントロールを持つページに対して生成されたソースのhtmlを見たし、これが出力された
EDITED
... ...用として今
<input type="hidden" name="ctl00$MainContentPlaceHolder1$ListView1$ctrl0$ctl00$HiddenField1" id="MainContentPlaceHolder1_ListView1_ctrl0_HiddenField1_0" value="12386026" />
、あなたが元々私に与えたコード、私はこれに更新しました...
HiddenField hf = Page.PreviousPage.Master.FindControl("MainContentPlaceHolder1").FindControl("ListView1").FindControl("HiddenField1") as HiddenField;
まだ運がありません。私は近づいていますか?
は、[OK]を、ので、どのように私はその後、通常使用して取得するのと同じことhiddenfield1 ... OID文字列の値を取得することができます。あなたはすべての投稿の値が何であるかを確認したい場合は
、これを使用します= Request.Form [HiddenField1]; ? – cjtampa
私はあなたが提示したコードの最初の行でこのエラーが発生しています。オブジェクト参照がオブジェクトのインスタンスに設定されていません。 – cjtampa
まず、 'ContentPlaceHolder1'がマスターを使ってページの' asp:Content'に与えたIDと一致することを確認してください。 'HiddenField1'が別のコントロールの中にある場合は、まず' .FindControl( "HiddenField1")の前に別の 'FindControl'を追加してコントロールツリーをナビゲートしてそのコントロールツリーを見つける必要があります。 – VDWWD