Hi,
I am Currently working on GridDropdownlist column ,here am trying to bind datasource to the GridDropdown column in the Item DataBound event.But it is coming as empty..Please suggest me ,where am i doing wrong.
Here is my Code:
ASPX
<asp:UpdatePanel runat="server">
<ContentTemplate>
<telerik:RadGrid ID="RadGrid1" runat="server" OnNeedDataSource="RadGrid1_NeedDataSource"
OnItemDataBound="RadGrid1_ItemDataBound" GridLines="None">
<MasterTableView AutoGenerateColumns="False">
<EditFormSettings ColumnNumber="2" CaptionFormatString="Edit details for ProductName with ID {0}"
CaptionDataField="DeptName">
<FormTableItemStyle Wrap="False"></FormTableItemStyle>
<FormCaptionStyle></FormCaptionStyle>
<FormMainTableStyle CellSpacing="0" CellPadding="3" Width="100%" />
<FormTableStyle GridLines="Horizontal" CellSpacing="0" CellPadding="2" CssClass="module"
Height="110px" Width="100%" />
<FormTableAlternatingItemStyle Wrap="False"></FormTableAlternatingItemStyle>
<FormStyle Width="100%" BackColor="#EEF2EA"></FormStyle>
<EditColumn UpdateText="Update record" UniqueName="EditCommandColumn1" CancelText="Cancel edit">
</EditColumn>
<FormTableButtonRowStyle HorizontalAlign="Right" CssClass="EditFormButtonRow"></FormTableButtonRowStyle>
</EditFormSettings>
<Columns>
<telerik:GridEditCommandColumn></telerik:GridEditCommandColumn>
<telerik:GridRatingColumn DataField="Rating" HeaderText="Rating">
<HeaderStyle Width="250px" />
</telerik:GridRatingColumn>
<telerik:GridAttachmentColumn MaxFileSize="1048576" EditFormHeaderTextFormat="Upload File:"
HeaderText="Download" AttachmentDataField="BinaryData" FileNameTextField="AttachmentFile"
DataTextField="AttachmentFile" UniqueName="AttachmentFile">
</telerik:GridAttachmentColumn>
<telerik:GridDropDownColumn UniqueName="DeptName" DataField="DeptName" ListTextField="DeptName" ListDataMember="DeptName"
SortExpression="DeptName" DropDownControlType="DropDownList" HeaderText="RadComboBox Column">
</telerik:GridDropDownColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</ContentTemplate>
</asp:UpdatePanel>
C#
private
DataTable BindData()
{
DataTable dt = new DataTable();
DataColumn dc = new DataColumn("Rating");
dt.Columns.Add(dc);
DataColumn dc1 = new DataColumn("AttachmentFile");
dt.Columns.Add(dc1);
DataColumn dc2 = new DataColumn("DeptName");
dt.Columns.Add(dc2);
DataRow dr = dt.NewRow();
dr[dc] = 3.5;
dr[dc1] =
"Image1";
dr[dc2] =
"HR";
dt.Rows.Add(dr);
return dt;
}
protected
void RadGrid1_NeedDataSource(object sender, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
RadGrid1.DataSource = BindData();
}
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem editedItem = e.Item as GridEditableItem;
GridEditManager editMan = editedItem.EditManager;
GridDropDownListColumnEditor editor = (GridDropDownListColumnEditor)(editMan.GetColumnEditor("DeptName"));
DropDownList ddList = editor.DropDownListControl;
ddList.DataSource = AssignDataSourceToDropDown();
ddList.DataTextField =
"DeptName";
ddList.DataValueField =
"DeptId";
ddList.DataBind();
}
 
 
}
private DataTable AssignDataSourceToDropDown()
{
DataTable dt = new DataTable();
DataColumn dc = new DataColumn("DeptName");
DataColumn dc1 = new DataColumn("DeptId");
dt.Columns.Add(dc);
dt.Columns.Add(dc1);
DataRow dr = dt.NewRow();
dr[dc] =
"HR";
dr[dc1] =
"1";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr[dc] =
"PF";
dr[dc1] =
"2";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr[dc] =
"Admin";
dr[dc1] =
"3";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr[dc] =
"TTG";
dr[dc1] =
"4";
dt.Rows.Add(dr);
return dt;
}
Regards,
Sreekanth