I'm using the update feature of the grid. during the update, I use the
OnItemDataBoundHander(object sender, GridItemEventArgs e)
to prepopulate the RadComboBox as instructed within the examples. the following contains the C# code
if (e.Item.IsInEditMode)
{
GridEditableItem item = (GridEditableItem)e.Item;
if (!(e.Item is IGridInsertItem))
{
//this area is for update
using (dl = new WellVentDataLayer())
{
//For the Area section
RadComboBox combo = (RadComboBox)item.FindControl("RadComboBoxArea");
RadComboBoxItem selectedItem = new RadComboBoxItem();
selectedItem.Text = ((DataRowView)e.Item.DataItem)["AreaName"].ToString();
combo.Items.Add(selectedItem);
selectedItem.DataBind();
}
}
}
and the following aspx code
<telerik:GridTemplateColumn UniqueName="AreaName" HeaderText="Area"
SortExpression="AreaName" ItemStyle-Width="150px" DataField="_AreaName"
AndCurrentFilterFunction="Contains">
<FooterTemplate>
Template footer
</FooterTemplate>
<FooterStyle VerticalAlign="Middle" HorizontalAlign="Center" />
<ItemTemplate>
<%
#DataBinder.Eval(Container.DataItem, "_AreaName")%>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadComboBox runat="server" ID="RadComboBoxArea" EnableLoadOnDemand="True" DataTextField="AreaName" OnItemsRequested="RadComboBoxArea_ItemsRequested" DataValueField="ID" AutoPostBack="true" HighlightTemplatedItems="true" Height="140px" Width="100px" DropDownWidth="200px"
OnSelectedIndexChanged="ComboBox1_OnSelectedIndexChangedHandler">
<ItemTemplate>
<%# DataBinder.Eval(Container, "Text")%>
</ItemTemplate>
</telerik:RadComboBox>
</EditItemTemplate>
<HeaderStyle Width="100px" />
<ItemStyle Width="100px"></ItemStyle>
</telerik:GridTemplateColumn>
the code gave the following error on the row
Unable to cast object of type 'GHG_MCA.WellVentEvents' to type 'System.Data.DataRowView'.
selectedItem.Text = ((DataRowView)e.Item.DataItem)["AreaName"].ToString();
thanks,
Minh Bui