送信ボタンがクリックされた後に LinkButton を追加し、正しくポストバックする方法はありますか。たとえば、このシナリオを考えてみましょう。
アップロード コントロールと送信ボタンを含むページが読み込まれます。選択が行われ、ユーザーが送信ボタンをクリックした後、ファイル名の横にオプションの削除ボタンを付けて、アップロードされたファイルを別の仕切りに表示したいと思います。問題は、ユーザーが送信ボタンをクリックすると、ファイルが要求される場所であるため、クリックハンドラーにコントロールを追加しようとすることですが、コントロール応答にリンクボタンを追加しようとすると、もちろんイベントがフックされません.
<form .....
<telerik:RadAsyncUpload ID="CtrlRadAsyncUpload" runat="server">
</telerik:RadAsyncUpload>
<asp:Button ID="CtrlSave" runat="server" Text="Submit Plans" />
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
CtrlSave.Click += new EventHandler(CtrlSave_Click);
}
protected void Page_Load(object sender, EventArgs e)
{
//the problem is here, the new files are not created until after telerik has processed it own button click. I could add the buttons here, but the files are not posted yet. So i try to add them in the button click event. see below.
}
void CtrlSave_Click(object sender, EventArgs e)
{
any LinkButtons created and added to the controls collection are there, but they do not post back properly
//get uploaded data
LinkButton pDelete = new LinkButton();
pDelete.Text = "Remove";
pDelete.Command += new CommandEventHandler(pDelete_Command);
pDelete.CommandArgument = pFile;
pDelete.CommandName = "Delete";
Controls.Add(pDelete);
}
これを解決するための良いアイデアはありますか?私は Web を隅々まで見てきましたが、ページのライフサイクルについてはかなり理解できていると思います。しかし、これは面倒です。私はこれらの問題に頻繁に行き詰っているようです。