メニュー選択に基づいてPlaceHolderを含むUpdatePanelにユーザーコントロールを動的にロードするASPページを含むASP.NET Webアプリケーションがあります。これは正常に動作します。問題は、コントロールが動作し、私のユーザーにイベントが..私はさまざまなシナリオを持っていないということです:選択した値が 動的にロードされるユーザーコントロール内のイベントがASP.NET Webアプリケーションで発生しない
- DropDownListコントロール、イベントをクリックしてLinkButtonコントロールは、プレースホルダに別のユーザーコントロールをロードする必要があります(上親ページ)。
私は今、この上で3日間過ごし、これにはいくつかのことを試してみました....登録されたイベントは、
....他のものの間のインタフェースを使用しますが、これまで何も働いていない:(..
はい、私はユーザーコントロールでもPage_PreInitイベントを試してみました。 ユーザーコントロールでLinkButton(またはDropDownList)をクリックしたときに発生する唯一の事はPage_Loadイベントです親ページ..そして、ユーザーコントロールを含んでいるPlaceHolder(私はクリックしています)にContol.Count = nullがあります ここにいくつかのコード
//Page_Load on parent page:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
LoadDefaultControl(ctrlPlaceHolder, Base_Path + "_Services.ascx");
}
}
// Page_Loadの私のUserControl
protected void Page_Load(object sender, EventArgs e)
{
btJoomlaManagement.Click += btJoomlaManagement_Click;
}
で親ページ上のプレースホルダは、UpdatePanelの>> ContentTemplate内にあります。私は私のユーザーコントロールで親ページの実行ではなく、上の私のUserControl、Page_Loadの中で私のClickメソッドを私のLinkButtonコントロールをクリックしruns..when Clickイベントで私のUserControlをPage_Loadをロードfollowing..when
<asp:UpdatePanel ID="pnlControlContainer" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:PlaceHolder ID="ctrlPlaceHolder" runat="server" EnableViewState="False" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="menuServices" />
</Triggers>
</asp:UpdatePanel>
動作です。私のリンクボタンをクリックしたusercontrolが消えます。
私のイベント(クリック)は発生しません...あなたは少し良く理解していただきたいと思います。
はい、私はUser ControlでもPage_PreInitイベントを試しました。 ユーザーコントロールでLinkButton(またはDropDownList)をクリックしたときに発生する唯一の問題は、親ページのPage_Loadイベントです。次に、ユーザーコントロールを含むPlaceHolder(私はクリックしています)にContol.Count = nullがあります。 ここにいくつかのコードがあります
–