ユーザーコントロールのタイトルバーがprocesSearchCriteria1を介してロードされるとき、PNL1のデフォルトボタンをSearchButtonにしたいと思います。もちろん、ucBBB を介して読み込まれるときは、SaveButton を Pnl2 の defaultButton にしたいと考えています。これは可能ですか?
メインページ:
<asp:Panel runat="server" ID="Pnl1" defaultButton="">
<uc1:AAA ID="procesSearchCriteria1" runat="server"/>
</asp:Panel>
<div class="separator"></div>
<asp:Panel runat="server" ID="Pnl2" defaultButton="">
<uc2:BBBB ID="ucBBB" runat="server"/>
</asp:Panel>
UserControl プロセスSearchCriteria1:
<uc3:TitleBar ID="ucTitleBarAAA" runat="server" Type="Search" />
ユーザーコントロール ucBBB:
<uc3:TitleBar ID="ucTitleBarBBB" runat="server" Type="Save" />
ユーザーコントロールのタイトルバー
<asp:ImageButton ID="SearchButton" runat="server" ImageUrl="/Images/title_search.png" OnClick="SearchButton_Clicked" />
<asp:ImageButton ID="SaveButton" runat="server" ImageUrl="/Images/title_save.png" OnClick="SaveButton_Clicked" />
以下のようにボタンの ID をメイン ページに渡そうとしましたが、次のエラー メッセージが表示されます。ID DefaultButton.UniqueID は、ブラウザで見たときにボタンの ID と同じですが
コード ビハインド メインページ:
public procesSearchCriteria procesSearchCriteria { get { return procesSearchCriteria1; } }
protected void Page_Load(object sender, EventArgs e)
{
procesSearchCriteria.Load += new EventHandler(procesSearchCriteria_Load);
}
void procesSearchCriteria_Load(object sender, EventArgs e)
{
ImageButton DefaultButton = procesSearchCriteria.DefaultButtonProcesSearchCriteria;
Pnl1.DefaultButton = DefaultButton.UniqueID;
}
コード ビハインド プロセスSearchCriteria1:
public ImageButton DefaultButtonProcesSearchCriteria { get; set; }
DefaultButtonProcesSearchCriteria = (ImageButton)ucTitleBarAAA.TitleBarSearchButton