私はこの問題の解決策を見つけるために2日間を費やしましたが、ExpertExchangeを試しても、解決策を得ることができません。私はASP.Net(C#を使用)の非常に初心者のプログラマーであり、文字列/URL投稿を使用したくありません
tbSearchStringというテキストボックスを持つMasterPageがあります。これは、ユーザーが何かを入力してから別のページへのポストバックを実行できる単純なボックスですSearchResults.aspxしたがって、MasterPageを使用するDefault.aspxなどの他のページもあります。
私はほぼすべてを試し、ネット上で見つけたほぼすべての投稿を読みましたが、変数が常にNullであるかどうかは問題ではありません。
searchResults loadpageイベントでこのコードを使用しましたが、ページのテキストボックスに値を入力し、ボタンをクリックしてSearchResultsページにポストバックしても、これらの変数はすべてnullです。 searchResultsページで送信します。
SearchResultsバックエンドページ
protected void Page_Load(object sender, EventArgs e)
{
TextBox SearchString;
TextBox SearchString2;
TextBox SearchString3;
TextBox SearchString5;
if (Page.PreviousPage != null) //This is true on every test
{
SearchString = (TextBox)Page.PreviousPage.Master.FindControl("tbSearchString");
SearchString2 = (TextBox)PreviousPage.Master.FindControl("tbSearchString");
SearchString3 = (TextBox)Master.FindControl("tbSearchString");
TextBox LoginControlx = (TextBox)PreviousPage.FindControl("Form1");
if (LoginControlx != null)
{
TextBox SearchString4 = (TextBox)LoginControlx.FindControl("tbSearchString");
}
}
MainWebsite.Masterページコード
<asp:TextBox ID="tbSearchString" runat="server"></asp:TextBox>
<asp:Button ID="btnSearch1" runat="server" Text="Search" PostBackUrl="~/SearchResultRentalEquiptment.aspx" />
CSバックエンドページに何もありません
したがって、Default.aspxページで
特別なことは何もありませんマスターページといくつかのテキストコンテンツだけで、テキストボックスにテキストを入力するとSearchResultsページに移動し、デフォルトまたは他のページのテキストボックスコントロールからdarn値を取得できません。
賢い人は何と言いますか?