<telerik:RadGrid runat="server" ID="Test_RadGrid" AutoGenerateColumns="false" AllowPaging="true" OnNeedDataSource="RadGrid_NeedDataSource" OnUpdateCommand="RadGrid_UpdateCommand" OnItemCreated="RadGrid_ItemCreated" OnDeleteCommand="RadGrid_DeleteCommand" OnInsertCommand="RadGrid_InsertCommand" OnItemDataBound="RadGrid_ItemDataBound"> <MasterTableView DataKeyNames="ID" CommandItemDisplay="Top" InsertItemPageIndexAction="ShowItemOnCurrentPage" EditMode="InPlace"> <Columns> <telerik:GridEditCommandColumn ButtonType="ImageButton" /> <telerik:GridBoundColumn DataField="ID" HeaderText="ID" ReadOnly="true" ForceExtractValue="Always" ConvertEmptyStringToNull="true" /> <telerik:GridBoundColumn DataField="Name" HeaderText="Name" /> <telerik:GridDropDownColumn UniqueName="CustomerCombo" HeaderText="Customer" DropDownControlType="RadComboBox" /> </Columns> </MasterTableView></telerik:RadGrid>protected void RadGrid_NeedDataSource(object source, GridNeedDataSourceEventArgs e){ Test_RadGrid.DataSource = DataSource(); // linq to sql join statement}protected void RadGrid_ItemDataBound(object source, GridItemEventArgs e){ if (e.Item is GridEditableItem && e.Item.IsInEditMode) { GridEditableItem editableItem = e.Item as GridEditableItem; // ^---- At this point editableItem.KeyValues, in Watch window, says KeyValues threw an exception // of type System.ArgumentOutOfRangeException, but doesn't break GridEditManager editManager = editableItem.EditManager as GridEditManager; GridDropDownListColumnEditor editor = editManager.GetColumnEditor("CustomerCombo") as GridDropDownListColumnEditor; //editor.DataSource = Customer.DataSource(); //editor.DataValueField = TestField.ID; //editor.DataTextField = TestField.Name; //editor.DataBind(); RadComboBox combo = editableItem[TestField.CustomerCombo].Controls[0] as RadComboBox; combo.AppendDataBoundItems = true; combo.Items.Insert(0, new RadComboBoxItem("No customer selected", "0")); var ret = (int)editableItem.GetDataKeyValue("0"); // <-- OutOfRangeException thown, debugger }<asp:UpdatePanel ID="_updatePanel" runat="server" UpdateMode="Conditional"><ContentTemplate> ...<telerik:RadAsyncUpload ID="fileUpload" runat="server" MaxFileInputsCount="1" OnClientFilesSelected="fileUpload_ClientFilesSelected" /><br /> <asp:Button ID="_saveNewFileButton" runat="server" OnClick="_saveNewFileButton_Click"<br> Text="Save"/></ContentTemplate></asp:UpdatePanel>var FilesUpdateInterval = null; //Handles client side FilesSelected event for _newFileUploadButton. function fileUpload_ClientFilesSelected(sender, args) { //disable the click event for submit button during upload< var submitButton = $find('<%= _saveNewFileButton.ClientID %>'); submitButton.set_text('Please Wait for Attachment Upload...'); submitButton.set_readOnly(true); if (FilesUpdateInterval == null) { FilesUpdateInterval = setInterval(function () { FileCheckForUploadCompletion(); }, 500); } }All,
Below is the code for my rad grid, and I want to get the selected item value of the rad combo box "not text" in gridbatchedit command.
command.NewValues["Description"] --want to text the selected item value, instead of text
protected void rgReleaseSchedule_Prerender(object sender, EventArgs e)
{
{
SavedChangesList.ForeColor = System.Drawing.Color.Red;
RadComboBox ddlDesc = rgReleaseSchedule.FindControl(rgReleaseSchedule.MasterTableView.ClientID + "_Description").FindControl("rdDescription") as RadComboBox;
var description = IoC.Current.Resolve<IReleaseService>().ReleaseListScheduleTitle();
ddlDesc.DataSource = description;
ddlDesc.DataTextField = "Description";
ddlDesc.DataValueField = "TitleID";
ddlDesc.DataBind();
}
}
protected void rgReleaseSchedule_BatchEditCommand(object sender, Telerik.Web.UI.GridBatchEditingEventArgs e)
{
try
{
SavedChangesList.Items.Clear();
SavedChangesList.ForeColor = System.Drawing.Color.Red;
foreach (GridBatchEditingCommand command in e.Commands)
{
Hashtable newvalues= command.NewValues;
if (command.Type == GridBatchEditingCommandType.Update)
{
if (command.NewValues["Date"].ToString() != "" && command.NewValues["Time"].ToString() != "" && command.NewValues["Description"].ToString() != "")
{
Int32 result = IoC.Current.Resolve<IReleaseService>().ReleaseListUpdate((Int32)command.Item.OwnerTableView.DataKeyValues[command.Item.ItemIndex]["ID"],
(DateTime)command.NewValues["Date"], command.NewValues["Time"].ToString(), command.NewValues["Description"]);
}


<telerik:RadGrid ID="TrainingPlanRadGrid" runat="server" Width="100%" AutoGenerateColumns="false" AllowPaging="true" PageSize="13" ShowHeader="true" ShowFooter="false" ShowGroupPanel="false" ShowStatusBar="false" OnNeedDataSource="TrainingPlanRadGrid_NeedDataSource" OnItemDataBound="TrainingPlanRadGrid_ItemDataBound" AllowMultiRowSelection="true" AllowAutomaticInserts="false" AllowAutomaticDeletes="false" AllowAutomaticUpdates="false" AllowSorting="true" AllowFilteringByColumn="false" BorderStyle="None" Style="overflow: auto;" HeaderStyle-Font-Bold="true"> <MasterTableView TableLayout="Fixed" Width="100%" ClientDataKeyNames="ID"> <Columns> <telerik:GridTemplateColumn UniqueName="CheckBoxTemplateColumn" Display="true"> <ItemTemplate> <asp:CheckBox ID="CheckBox1" runat="server" OnCheckedChanged="ToggleRowSelection" AutoPostBack="True" /> </ItemTemplate> <HeaderTemplate> <asp:CheckBox ID="headerChkbox" runat="server" OnCheckedChanged="ToggleSelectedStatePage" AutoPostBack="True" /> </HeaderTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn UniqueName="RequestId" HeaderText="" DataField="ID" Visible="false" /> <telerik:GridDateTimeColumn UniqueName="RequestDate" HeaderText="RequestDate" DataField="REQUEST_DATE" HeaderStyle-Wrap="false" HeaderStyle-Width="12%" HeaderStyle-HorizontalAlign="Right" ItemStyle-Width="12%" ItemStyle-HorizontalAlign="Right" /> <telerik:GridBoundColumn UniqueName="RequestUser" DataField="USER_NAME" HeaderText="RequestUser" HeaderStyle-Wrap="false" HeaderStyle-Width="15%" ItemStyle-Width="15%" /> <telerik:GridBoundColumn UniqueName="RequestUserOrg" DataField="ORG_LABEL" HeaderText="RequestUserOrg" HeaderStyle-Wrap="false" HeaderStyle-Width="15%" ItemStyle-Width="15%" /> <telerik:GridBoundColumn UniqueName="RequestAdmin" DataField="ADMIN_NAME" HeaderText="RequestAdmin" HeaderStyle-Wrap="false" HeaderStyle-Width="15%" ItemStyle-Width="15%" /> <telerik:GridBoundColumn UniqueName="RequestCourse" DataField="COURSE_NAME" HeaderText="RequestCourse" HeaderStyle-Wrap="false" HeaderStyle-Width="25%" ItemStyle-Width="25%" /> <telerik:GridTemplateColumn UniqueName="RequestStatus" HeaderText="RequestStatus" HeaderStyle-Wrap="false" HeaderStyle-Width="12%" ItemStyle-Width="12%" ItemStyle-Wrap="false"> <ItemTemplate> <%# GetRequestStatus(Eval("REQUEST_STATUS").ToString())%> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> <PagerStyle AlwaysVisible="false" Mode="NumericPages" /> </MasterTableView> <HeaderStyle Font-Bold="true" /> <ClientSettings Selecting-AllowRowSelect="true"> <ClientEvents OnRowDblClick="editTrainingPlan" /> </ClientSettings></telerik:RadGrid>protected void ToggleRowSelection(object sender, EventArgs e) { GridItem item = ((sender as CheckBox).NamingContainer as GridItem); item.Selected = (sender as CheckBox).Checked; ... }var grid = $find("TrainingPlanRadGrid");var gridSelectedItems = grid.get_selectedItems();