else if (e.CommandName == RadGrid.UpdateCommandName) { MySqlConnection conn = new MySqlConnection(); conn.ConnectionString = GetConnectionString(); MySqlCommand cmd = new MySqlCommand(); try { GridEditableItem editedItem = e.Item as GridEditableItem; string ID = editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["ID"].ToString(); RadNumericTextBox newTimeScaleTextBox = (RadNumericTextBox)e.Item.FindControl("RadNumericBox_TimeScale"); string editedTimeScale = newTimeScaleTextBox.Text; RadTextBox newGameNameTextBox = (RadTextBox)e.Item.FindControl("RadTextBox_Name"); string editedName = newGameNameTextBox.Text; RadComboBox newManagerCombo = (RadComboBox)e.Item.FindControl("RadComboBox_Manager"); string editedManagerID = newManagerCombo.SelectedValue; RadComboBox newRecalibrationDateCombo = (RadComboBox)e.Item.FindControl("RadComboBox_StartPeriod"); string editedRecalibrationDate = newRecalibrationDateCombo.SelectedValue; conn.Open(); cmd.Connection = conn; cmd.CommandText = "MyUpdateSQL"
cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); } catch (MySql.Data.MySqlClient.MySqlException ex) { // IMPLEMENT } conn.Close(); }Hi there,
I have a grid setup for cardview with an item template, there is a corresponding edititemtemplate. The edititemtemplate cointains controls such as a RadNumericTextBox, RadTextBox and a couple of RadComboBoxes (one, crucially, is AutomaticLoadonDemand...this is why I'm not using autogenerated).
The above Item UpdateCommand works great, the values I enter in the edititemtemplate are refelected in the database. I also conditionally (session variable) have the RadGrid.InsertItem() on page load and this is where the problem starts.
PROBLEM: I just can't get the PerformInsert command to achieve the same results. It seems the values i enter on the edititemtemplate are not recoverable from the controls. I can use FindControl to get for eg
RadNumericTextBox newTimeScaleTextBox = (RadNumericTextBox)e.Item.FindControl("RadNumericBox_TimeScale"); But when i try and get a value from newTimeScaleTextBox Text or Value it's empty on the server in the PerformInsert command.
Any help appreciated.
<EditItemTemplate> <div style="margin:10px;"> <table> <tr style="height: 50px;"> <td style="width: 150px; border: none;"><span style="font-weight: bold;">Name:</span></td> <td style="border:none;"> <telerik:RadTextBox ID="RadTextBox_Name" EmptyMessage="e.g. Accounts Department / Q4 2010" Width="500" Skin="Office2007" Text='<%# Bind("Name")%>' runat="server" /> </td> </tr> <tr style="height: 50px;"> <td style="border:none;"><span style="font-weight: bold;">Start Period:</span></td> <td style="border:none;"> <telerik:RadComboBox Width="150" runat="server" AllowCustomText="true" DataValueField='<%# Bind("RecalibrationDate") %>' Text='<%# String.Format("{0:MMMM}", Eval("RecalibrationDate")) %>' Skin="Office2007" ID="RadComboBox_StartPeriod" > <Items> <telerik:RadComboBoxItem Text="January" Value="2010-01-01" /> <telerik:RadComboBoxItem Text="February" Value="2010-02-01" /> <telerik:RadComboBoxItem Text="March" Value="2010-03-01" /> <telerik:RadComboBoxItem Text="April" Value="2010-04-01" /> <telerik:RadComboBoxItem Text="May" Value="2010-05-01" /> <telerik:RadComboBoxItem Text="June" Value="2010-06-01" /> <telerik:RadComboBoxItem Text="July" Value="2010-07-01" /> <telerik:RadComboBoxItem Text="August" Value="2010-08-01" /> <telerik:RadComboBoxItem Text="September" Value="2010-09-01" /> <telerik:RadComboBoxItem Text="October" Value="2010-10-01" /> <telerik:RadComboBoxItem Text="November" Value="2010-11-01" /> <telerik:RadComboBoxItem Text="December" Value="2010-12-01" /> </Items> </telerik:RadComboBox> </td> </tr> <tr style="height: 50px;"> <td style="border:none;"><span style="font-weight: bold;">TimeScale:</span></td> <td style="border:none;"> <telerik:RadNumericTextBox Label="1:" ID="RadNumericBox_TimeScale" Skin="Office2007" Text='<%# Bind("TimeScale")%>' MinValue="1" MaxValue="500" NumberFormat-DecimalDigits="0" ShowSpinButtons="true" runat="server" /> </td> </tr> <tr style="height: 50px;"> <td style="border:none;"><span style="font-weight: bold;">Manager:</span></td> <td style="border:none;"> <telerik:RadComboBox Filter="Contains" AllowCustomText="true" EmptyMessage="Search for a Name and/or Reference" EnableVirtualScrolling="true" EnableTextSelection="false" ShowMoreResultsBox="true" ItemsPerRequest="20" EnableAutomaticLoadOnDemand="true" Skin="Office2007" Width="300" ID="RadComboBox_Manager" DataSourceID="SqlDataSource_ManagersList" runat="server" DataTextField="DisplayManager" DataValueField="ManagerID" > <Items> </Items> </telerik:RadComboBox> </td> </tr> <tr style="height: 50px;"> <td style="border:none;"></td> <td style="border:none;"> <asp:Button ID="Button_InsertUpdate" Text='<%# RadGrid.MasterTableView.IsItemInserted ? "Add" : "Update" %>' runat="server" CommandName='<%# RadGrid.MasterTableView.IsItemInserted ? "PerformInsert" : "Update" %>' /> <asp:Button ID="Button_DiscardCancel" Text='<%# RadGrid_GameSetup_Basics.MasterTableView.IsItemInserted ? "Discard" : "Cancel" %>' runat="server" CommandName='<%# RadGrid_GameSetup_Basics.MasterTableView.IsItemInserted ? "Discard" : "Cancel" %>' /> </td> </tr> </table> </div> </EditItemTemplate>