or
<telerik:RadScriptManager ID="RadScriptManager1" runat="server"> </telerik:RadScriptManager> <telerik:RadUpload ID="RadUpload1" runat="server" /> <telerik:RadProgressArea ID="RadProgressArea1" runat="server" /> <telerik:RadProgressManager ID="RadProgressManager1" runat="server" /> <asp:Button ID="Button1" runat="server" Text="Submit" /><asp:Panel runat="server" ID="PanelGrid" Width="630px"> <fieldset id="fieldGrid" style="width: 608px;"> <legend>Notes History</legend> <telerik:RadGrid ID="RadGridJobs2" runat="server" AutoGenerateColumns="False" AllowPaging="True" GridLines="None" Width="608px" Skin="Office2007" SkinID="RadGrid_Paging_Page20_NoExport_Add" AllowAutomaticDeletes="false" AllowAutomaticInserts="True" DataSourceID="LinqDataSourceNotes" OnUpdateCommand="RadGridJobs2_UpdateCommand"> <MasterTableView DataKeyNames="OID" DataSourceID="LinqDataSourceNotes" GridLines="None" CommandItemDisplay="Top"> <Columns> <telerik:GridBoundColumn DataField="NoteDetails" HeaderText="Note" SortExpression="NoteDetails" UniqueName="columnNoteDetails" Visible="false" /> <telerik:GridTemplateColumn UniqueName="columnNewNote" HeaderText="Note History"> <ItemTemplate> <table cellspacing="0" cellpadding="0" width="100%" border="0" class="TableNoBorders"> <tr> <td> <%# "<div><span style='font-weight: bold; '>By </span><span style='font-style: italic; '>" + Eval("User.FirstName") + " " + Eval("User.LastName") + "</span><span style='font-weight: bold; '> on </span><span style='font-style: italic; '>" + Eval("NoteDate", "{0:dd-MMM-yyyy hh:mm tt}") + "</span></div>"%> </td> </tr> <tr> <td> <%# "<div style='font-weight: bold; '>Note: </div>" + Eval("NoteDetails")%> </td> </tr> </table> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridEditCommandColumn ButtonType="ImageButton" HeaderStyle-Width="10px" ItemStyle-Width="10px" /> <telerik:GridClientDeleteColumn ButtonType="ImageButton" HeaderStyle-Width="10px" ItemStyle-Width="10px" Visible="false" /> </Columns> <CommandItemSettings AddNewRecordText="New Note" /> <EditFormSettings> <EditColumn ButtonType="ImageButton" /> </EditFormSettings> </MasterTableView> </telerik:RadGrid> </fieldset></asp:Panel>protected void RadGridJobs2_UpdateCommand(object source, GridCommandEventArgs e) { var editableItem = ((GridEditableItem)e.Item); var editNoteID = (long)editableItem.GetDataKeyValue("OID"); //retrieve entity form the Db var editNote = DbContext.Notes.Where(nut => nut.OID == editNoteID).FirstOrDefault(); if (editNote != null) { try { //update entity's state editableItem.UpdateValues(editNote); //submit changes to Db DbContext.SubmitChanges(); } catch (Exception ex) { } }}
Hi Everyone
I am having trouble with a RequiredField Validator for a ComboBox in Edit Form.
This is the scenario:
I have a grid with 3 columns:
1 TemplateColumn with a ComboBox as its EditItemTemplate
2 GridNumericColumns
I’ve placed OnBlur and OnFocus events on the two NumericColumnEditors.
I’ve Placed a Compare Field Validator for the comboBox
I’ve also disabled the ComboBox when it is in the Edit form.
Now, this works fine when I am in the Insert Form but when I hit the edit command I get this error:
htmlfile: Can't move focus to the control because it is invisible, not enabled, or of a type that does not accept the focus.
This is the JSCode:
var oldValue; function Focus(sender, eventArgs) { oldValue = sender.get_value(); } function Blur (sender, eventArgs) { if ( sender.get_value() < 0) { radalert('El valor no puede ser negativo',200,100,'Alerta'); sender.set_value(oldValue); } }Markup:
<Columns> <telerik:GridTemplateColumn UniqueName="LINEA" HeaderText="Linea ISA" AllowFiltering="False"> <ItemTemplate> <asp:Label ID="LIN" runat="server" Width="80px"> <%# DataBinder.Eval(Container.DataItem, "LINEA")%> </asp:Label> </ItemTemplate> <EditItemTemplate> <telerik:RadComboBox DataTextField="EQUIPO" DataValueField="EQUIPO" EnableLoadOnDemand="True" ID="RadCmbBx_Linea" runat="server" MarkFirstMatch="True" OnSelectedIndexChanged="RadCmbBx_Linea_SelectedIndexChanged" AutoPostBack="true"> </telerik:RadComboBox> <asp:CompareValidator ValueToCompare="Select..." Operator="NotEqual" ControlToValidate="RadCmbBx_Linea" ErrorMessage="You must select a city!" runat="server" ID="Comparevalidator1" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridNumericColumn DataField="ENERGIA_ACTIVA_HOY" UniqueName="ENERGIA_ACTIVA_HOY" HeaderText="Energia Hoy" /> <telerik:GridNumericColumn DataField="ENERGIA_REACTIVA_HOY" UniqueName="ENERGIA_REACTIVA_HOY" HeaderText="Energia Hoy ReActiva" /> </Columns>protected void RgridLineasISA_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridEditableItem && (e.Item.IsInEditMode)) { RadComboBox comboLinea = e.Item.FindControl("RadCmbBx_Linea") as RadComboBox; comboLinea.DataSource = new OES.Business.Equipo().ListLineasISA(); comboLinea.DataBind(); comboLinea.Items.Insert(0, new RadComboBoxItem("Select...")); if ((e.Item as GridEditableItem).IsInEditMode && (e.Item as GridEditableItem).IsDataBound && e.Item.ItemIndex != -1) { comboLinea.SelectedValue = ((OES_LineasISA)e.Item.DataItem).LINEA.ToString(); comboLinea.Enabled = false; } } protected void RgridLineasISA_ItemCreated(object sender, GridItemEventArgs e) { if (e.Item is GridEditableItem && (e.Item.IsInEditMode)) { GridNumericColumnEditor editorEnerActHoy = (GridNumericColumnEditor)e.Item.EditManager.GetColumnEditor("ENERGIA_ACTIVA_HOY"); editorEnerActHoy.NumericTextBox.ClientEvents.OnBlur = "Blur"; editorEnerActHoy.NumericTextBox.ClientEvents.OnFocus = "Focus"; GridNumericColumnEditor editorEnerReactHoy = (GridNumericColumnEditor)e.Item.EditManager.GetColumnEditor("ENERGIA_REACTIVA_HOY"); editorEnerReactHoy.NumericTextBox.ClientEvents.OnBlur = "Blur"; editorEnerReactHoy.NumericTextBox.ClientEvents.OnFocus = "Focus"; } }<table cellpadding="0" cellspacing="0" width="100%"> <tr> <td> <asp:Panel ID="ListViewPanel1" runat="server"> <telerik:RadListView ID="RadListView1" Width="100%" AllowPaging="True" runat="server" PageSize="9" AllowSorting="true" OnNeedDataSource="RadListView1_NeedDataSource" ItemPlaceholderID="ProductsHolder" > <LayoutTemplate> <fieldset id="FieldSet1" style="border:none; padding-left :30px;"> <asp:Panel ID="ProductsHolder" runat="server" /> </fieldset> </LayoutTemplate> <ItemTemplate> <div class="category"> <table cellpadding="0" cellspacing="0" > <tr><td> <a style='cursor:pointer;' href='<%# DetermineLink(Eval("id"), Eval("center"))%>'> <img src='<%#DetermineImage(Eval("id"), Eval("center"))%>' border='0' hspace='0' width='<%#Eval("w")%>' height='<%#Eval("h")%>' align="middle"/> </a> </td></tr> <tr> <td > <%#Mid(Eval("Title"), 1, 25)%> </td> </tr> <tr><td><br /></td></tr> </table> </div> </ItemTemplate> </telerik:RadListView> </asp:Panel> </td> <td valign="middle" align="center" > <telerik:RadDataPager ID="RadDataPager1" runat="server" PagedControlID="RadListView1" PageSize="9" Height="430px" Width="16px" > <Fields > <telerik:RadDataPagerSliderField SliderDragText="" SliderDecreaseText="" SliderIncreaseText="" SliderOrientation ="Vertical" /> </Fields> </telerik:RadDataPager> </td> </tr> </table>.RadDataPager_Default { border:none; background-color:Transparent; width:5px; padding-left : 45px; min-height:200px; } .RadDataPager_Default .rdpSliderLabel { display: none ; } .RadSlider_Default .rslTrack { border-color: #b9b9b9 #939393 #939393 #b9b9b9; height: 400px !important; } .RadSlider .rslVertical .rslIncrease { bottom: -250px !important; } .RadSlider_Default .rslVertical a.rslHandle { background-image:url('Slider/HandlesVertical.gif'); } .RadSlider_Default .rslVertical a.rslDraghandle { background:url('Slider/DragVerticalHandleRight.gif') no-repeat; }