私はRadGrid
を継承する単純なクラスを持っています。 RadGridにボタンを追加し、そのボタンにClickイベントハンドラを追加します。ボタンが必要な位置に正しく追加され、クリックイベントハンドラが起動していますが、radGrid.ExportToExcel()
は何もしていません。実際、クリックするとページがポストバックすると、ボタンは消えます。なぜこうなった?Telerik RadGrid ExportToPDF()またはExportToExcel()が機能しない
ボタンコントロールをPage.Form
コントロールコレクションに追加しようとしましたが、何も起こりません。
[ToolboxData("<{0}:RadGridDp runat=server></{0}:RadGridDp>")]
public class RadGridDP : RadGrid
{
public RadGridDP()
{
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Button btnExport = new Button();
btnExport.ID = "Export";
btnExport.Text = "Export";
btnExport.Click += new EventHandler(btnExport_Click);
btnExport.CommandArgument = this.ID;
this.MasterTableView.Controls.Add(btnExport);
}
void btnExport_Click(object sender, EventArgs e)
{
Button btnExport = (Button)sender;
string RadGridId = btnExport.CommandArgument.ToString();
RadGridDP radGrid = (RadGridDP)this.Parent.Parent.FindControl(RadGridId);
radGrid.ExportSettings.IgnorePaging = true;
radGrid.ExportSettings.OpenInNewWindow = true;
radGrid.ExportSettings.ExportOnlyData = true;
radGrid.MasterTableView.ExportToExcel();
}
}
私はUserControl
で同じことを行うと、任意のページでそのUserControl
を使用すると、それが正常に動作します。違いは何ですか?