- - PR -
カスタムコントロール(DataGrid)でのテンプレート要素 追加
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-12-15 13:18
今、DataGridを継承して
デザイン時にテンプレート列と、テンプレート要素にテキストボックスが生成される カスタムコントロールを作成しようとしています。 初心者なりに、見よう見まねでつくってみたのですが。。。 [テンプレートの編集]を行うとテキストボックスが消えてしまいます。 テンプレート要素を[テンプレートの編集]に引き継ぐには、どのようにしたらよいのでしょうか? アドバイスを頂けたら幸いです。宜しくお願い致します。 public class MyDataGrid : System.Web.UI.WebControls.DataGrid { public class MyTemplate : ITemplate { public void InstantiateIn(Control container) { TextBox t = new TextBox(); t.DataBinding += new EventHandler(this.BindName); container.Controls.Add(t); } public void BindName(Object sender, EventArgs e) { TextBox t = (TextBox) sender; DataGridItem container = (DataGridItem) t.NamingContainer; t.Text = "テンプレートにテキストボックス"; } } protected override void CreateChildControls() { base.AutoGenerateColumns = false; TemplateColumn objTemplateColumn = new TemplateColumn(); objTemplateColumn.HeaderText= "ヘッダ"; objTemplateColumn.ItemTemplate = new MyTemplate(); base.Columns.Add(objTemplateColumn); ChildControlsCreated = true; } protected override void Render(System.Web.UI.HtmlTextWriter writer) { base.Render(writer); } } |
1