This is a migrated thread and some comments may be shown as answers.

Dynamic Editable Grid - Object reference not set to an instance of an object

0 Answers 85 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Rajesh
Top achievements
Rank 1
Rajesh asked on 22 Sep 2017, 06:45 AM

Hi,

I am creating columns programmatically based on the data return from database.

For example:

In Datatable i have following rows

ColumnHeader      EditorType
ABC                         TextBox
XYZ                          DropDown
AAA                          TextBox

 

My Grid display format should be

ABC                               XYZ                                          AAA

Textbox Editor                Dropdown Editor                 Textbox Editor

 

But i have an error in rgDynamic.Rebind()

Note:

DataBinding of dropdown editor done in ItemCreated event.

protected void rgDynamic_PreRender(object sender, EventArgs e)
{
    if (!rgDynamic.MasterTableView.IsItemInserted)
    {
        foreach (GridDataItem dataItem in rgDynamic.MasterTableView.Items)
        {
            if (dataItem is GridEditableItem)
            {
                dataItem.Edit = true;
            }
        }
    }
    if (rgDynamic.MasterTableView.Items.Count > 0)
        rgDynamic.Rebind();
}

Stack Trace:

System.NullReferenceException was unhandled by user code
  HResult=-2147467261
  Message=Object reference not set to an instance of an object.
  Source=Telerik.Web.UI
  StackTrace:
       at Telerik.Web.UI.GridDropDownListColumnEditor.BindComboBox(Object sender, EventArgs e)
       at System.Web.UI.Control.OnDataBinding(EventArgs e)
       at Telerik.Web.UI.RadComboBox.OnDataBinding(EventArgs e)
       at Telerik.Web.UI.RadComboBox.PerformSelect()
       at System.Web.UI.WebControls.BaseDataBoundControl.DataBind()
       at Telerik.Web.UI.RadComboBox.DataBind()
       at System.Web.UI.Control.DataBindChildren()
       at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
       at System.Web.UI.Control.DataBind()
       at System.Web.UI.Control.DataBindChildren()
       at System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)
       at System.Web.UI.Control.DataBind()
       at Telerik.Web.UI.GridItem.SetupItem(Boolean dataBind, Object dataItem, GridColumn[] columns, ControlCollection rows)
       at Telerik.Web.UI.GridItemBuilder.InitializeItem(Int32 dataSourceIndex, String& nextItemHierarchicalIndex, Boolean& itemIsInEditMode)
       at Telerik.Web.UI.GridItemBuilder.CreateItems(GridGroupingContext group)
       at Telerik.Web.UI.GridTableView.CreateItems(IEnumerator enumerator, GridColumn[] columns, ControlCollection controls)
       at Telerik.Web.UI.GridTableView.CreateControlHierarchy(Boolean useDataSource)
       at Telerik.Web.UI.GridTableView.CreateChildControls(IEnumerable dataSource, Boolean useDataSource)
       at System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data)
       at System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data)
       at System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback)
       at System.Web.UI.WebControls.DataBoundControl.PerformSelect()
       at Telerik.Web.UI.GridTableView.PerformSelect()
       at System.Web.UI.WebControls.BaseDataBoundControl.DataBind()
       at Telerik.Web.UI.GridTableView.DataBind()
       at Telerik.Web.UI.RadGrid.DataBind()
       at Telerik.Web.UI.RadGrid.AutoDataBind(GridRebindReason rebindReason)
       at Telerik.Web.UI.RadGrid.Rebind()
       at WizardClient.rgDynamic_PreRender(Object sender, EventArgs e) in c:\------\release-40\WebMaster\Common\-----.aspx.cs:line 548
       at System.Web.UI.Control.OnPreRender(EventArgs e)
       at System.Web.UI.WebControls.BaseDataBoundControl.OnPreRender(EventArgs e)
       at Telerik.Web.UI.RadCompositeDataBoundControl.OnPreRender(EventArgs e)
       at System.Web.UI.Control.PreRenderRecursiveInternal()
       at System.Web.UI.Control.PreRenderRecursiveInternal()
       at System.Web.UI.Control.PreRenderRecursiveInternal()
       at System.Web.UI.Control.PreRenderRecursiveInternal()
       at System.Web.UI.Control.PreRenderRecursiveInternal()
       at System.Web.UI.Control.PreRenderRecursiveInternal()
       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
  InnerException:

 

No answers yet. Maybe you can help?

Tags
Grid
Asked by
Rajesh
Top achievements
Rank 1
Share this question
or