私はコードの背後に設定しようとしているグリッドを持っています。これまでのところすべてがスムーズに進行していましたが、 私はitemcommandイベントまたはそのイベントのイベントを設定するときに、コマンドをクリックするか、イベントを引き起こす何かをすると何も起こりません。だから私は私のアイテムコマンドで私の宣言に間違って何をしているのだろうかと思っていた。 あなたは以下の私のコード見つける:プログラムで項目コマンドイベントを設定します
private void createRadGrid()
{
//create radgrid
RadGrid rg = new RadGrid();
rg.ID = "RadGridView";
//setting the datasource and itemcommand event handler.
rg.DataSourceID = "MachineDataSet";
rg.ItemCommand += new GridCommandEventHandler(RadGridView_ItemCommand);
rg.Width = 862;
rg.CellSpacing = 2;
rg.CellPadding = 4;
rg.BorderWidth = 3;
rg.BackColor = System.Drawing.Color.Transparent;
rg.BorderColor = System.Drawing.Color.DarkGray;
rg.ForeColor = System.Drawing.Color.Black;
rg.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
rg.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
rg.BorderStyle = BorderStyle.Ridge;
rg.ShowStatusBar = true;
rg.AllowPaging = true;
rg.PageSize = 5;
rg.PagerStyle.Mode = GridPagerMode.NextPrevAndNumeric;
rg.AutoGenerateColumns = false;
rg.MasterTableView.PageSize = 5;
rg.MasterTableView.DataKeyNames = new string[] { "ID" };
rg.MasterTableView.ClientDataKeyNames = new string[] { "ID" };
rg.MasterTableView.AutoGenerateColumns = false;
rg.ClientSettings.Resizing.AllowColumnResize = true;
rg.ClientSettings.Resizing.EnableRealTimeResize = true;
rg.ClientSettings.Resizing.ResizeGridOnColumnResize = true;
GridBoundColumn boundColumn = new GridBoundColumn();
boundColumn.DataField = "ID";
boundColumn.HeaderText = "ID";
boundColumn.UniqueName = "MachineID";
boundColumn.Visible = false;
rg.MasterTableView.Columns.Add(boundColumn);
GridBoundColumn boundColumn1 = new GridBoundColumn();
boundColumn1.DataField = "SiteName";
boundColumn1.HeaderText ="Site Name";
boundColumn1.Resizable = true;
boundColumn1.ReadOnly = true;
rg.MasterTableView.Columns.Add(boundColumn1);
GridBoundColumn boundColumn2 = new GridBoundColumn();
boundColumn2.DataField = "Name";
boundColumn2.HeaderText = "Machine Name";
boundColumn2.Resizable = true;
boundColumn2.ReadOnly = true;
rg.MasterTableView.Columns.Add(boundColumn2);
GridBoundColumn boundColumn3 = new GridBoundColumn();
boundColumn3.DataField = "MachineType";
boundColumn3.HeaderText = "Machine Type";
boundColumn3.Resizable = true;
boundColumn3.ReadOnly = true;
rg.MasterTableView.Columns.Add(boundColumn3);
GridBoundColumn boundColumn4 = new GridBoundColumn();
boundColumn4.DataField = "MachineModel";
boundColumn4.HeaderText = "Machine Model";
boundColumn4.Resizable = true;
boundColumn4.ReadOnly = true;
rg.MasterTableView.Columns.Add(boundColumn4);
GridButtonColumn buttonColumn = new GridButtonColumn();
buttonColumn.ButtonType = GridButtonColumnType.PushButton;
buttonColumn.CommandName = "AssignNewValues";
buttonColumn.Resizable = true;
buttonColumn.Text = "Assign New Values";
rg.MasterTableView.Columns.Add(buttonColumn);
PlaceHolder_RadGridView.Controls.Add(rg);
}
問題領域は、このライン
rg.ItemCommand += new GridCommandEventHandler(RadGridView_ItemCommand);
すべてのヘルプや提案が非常に高く評価されている内にあるように見えます。右この行の後に
PlaceHolder_RadGridView.Controls.Add(rg);
:
それは私が間違った場所で初期化されたトリックでした – James213
非常に一般的なダイナミックコントロールを扱うときは、記事:http://msdn.microsoft.com/en-us/library/ms178472.aspx、非常に理解してくれましたページのライフサイクルのどの段階で何をすべきか乾杯 –