or
I'm using the Telerik rad grid and I'm allow the user to enter data directly to the grid.
I am using the "EditForms" edit mode and I also allow inserts using the same.
If the user edits a row, then I don't want to allow any other edits or inserts until the current one is complete or cancelled.
I'm totally new to Radgrids and I've recently been working in MVC... so any help would be great!

<telerik:RadNumericTextBox ID="INP_uniqueKey" runat="server" OnTextChanged="onUniqueKeyChanged"ShowSpinButtons="True" AutoPostBack="true" LabelWidth="64px" Width="160px">
<NumberFormat DecimalDigits="0" />
</telerik:RadNumericTextBox>protected void onUniqueKeyChanged(object sender, EventArgs e) { // Check if there is a value. if (INP_uniqueKey.Value != null) { i_uniqueKey = (int)INP_uniqueKey.Value; TBL_data = setOutResults.getControlList(i_uniqueKey, GRD_controlListContainer); // Initialization of labels and datafields if (setOutResults.getContainer != null) { INP_container.Text = setOutResults.getContainer; INP_containerReference.Text = setOutResults.getContainerReference; INP_dateSample.SelectedDate = setOutResults.getDateSample; INP_shopNumber.Text = setOutResults.getLineNumber; INP_operator.Text = setOutResults.getOperator; INP_productionNumber.Text = setOutResults.getProductionNumber; // Databinding GRD_controlListContainer.DataSource = TBL_data; GRD_controlListContainer.DataBind(); } // If there is no results, empty all fields if(TBL_data.Rows.Count == 0) { INP_dateSample.Clear(); INP_container.Text = ""; INP_containerReference.Text = ""; INP_dateSample.Clear(); INP_shopNumber.Text = ""; INP_operator.Text = ""; INP_productionNumber.Text = ""; } } }// Third header row : ButtonsGCG_headerGroup = new GridColumnGroup();GCG_headerGroup.Name = "buttons0";GCG_headerGroup.HeaderText = "";GCG_headerGroup.ParentGroupName = "control0";GRD_CONTROLLIST.MasterTableView.ColumnGroups.Add(GCG_headerGroup);<telerik:RadScriptManager ID="RadScriptManager1" runat="server" > <Scripts> <asp:ScriptReference Path="~/AreaRiservata/AdvancedForm.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" /> </Scripts> </telerik:RadScriptManager><script> $(function () { $("#accordion").accordion({ collapsible: true, active: true }); }); </script><script src="js/jquery-1.8.2.js"></script><script src="js/jquery-ui-1.9.1.custom.js"></script>| <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="RadAjaxManagerTest._Default" %> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml" > |
| <head runat="server"> |
| <title></title> |
| </head> |
| <body> |
| <form id="form1" runat="server"> |
| <div> |
| <telerik:RadScriptManager runat="server" /> |
| <telerik:RadAjaxManager ID="ajaxManager" runat="server"> |
| <AjaxSettings> |
| <telerik:AjaxSetting AjaxControlID="UpdatePanel1"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="UpdatePanel1" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| <telerik:AjaxSetting AjaxControlID="UpdatePanel2"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="UpdatePanel2" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| </AjaxSettings> |
| </telerik:RadAjaxManager> |
| <asp:Panel ID="UpdatePanel1" runat="server"> |
| <asp:Label ID="Label1" runat="server" /> |
| <asp:Button ID="Button1" runat="server" Text="Button1" /> |
| </asp:Panel> |
| <asp:Panel ID="UpdatePanel2" runat="server"> |
| <asp:Label ID="Label2" runat="server" /> |
| <asp:Button ID="Button2" runat="server" Text="Button2" /> |
| </asp:Panel> |
| </div> |
| </form> |
| </body> |
| </html> |
| using System; |
| namespace RadAjaxManagerTest |
| { |
| public partial class _Default : System.Web.UI.Page |
| { |
| protected void Page_Load(object sender, EventArgs e) |
| { |
| Label1.Text = Label2.Text = "LastUpdated: " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| } |
| } |
| } |
<system.serviceModel> <bindings> <webHttpBinding> <binding name="webHttpBindingConfiguration" maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> </binding> </webHttpBinding> </bindings> <client> <endpoint address="http://localhost:21415/MDMStyleCreateBusinessSvc/MDMBusinessService.svc" binding="basicHttpBinding" bindingConfiguration="basicHttpBusinessEndpoint" contract="MDMStyleCreateBusinessService.IMDMBusinessService" name="basicHttpBusinessEndpoint" /> </client> <services> <service name="RadComboLoadingServices" behaviorConfiguration="ASPNETAjaxServiceBehaviorConfiguration"> <endpoint address="" behaviorConfiguration="ASPNETAjaxEndpointBehaviorConfiguration" binding="webHttpBinding" bindingConfiguration="webHttpBindingConfiguration" contract="DKS.MDM.StyleCreate.Presentation.RadComboLoadOnDemandService" /> <endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" /> </service> </services> <behaviors> <serviceBehaviors> <behavior name="ASPNETAjaxServiceBehaviorConfiguration"> <dataContractSerializer maxItemsInObjectGraph="2147483647"/> <serviceMetadata httpGetEnabled="true" /> </behavior> </serviceBehaviors> <endpointBehaviors> <behavior name="ASPNETAjaxEndpointBehaviorConfiguration"> <dataContractSerializer maxItemsInObjectGraph="2147483647"/> <enableWebScript /> </behavior> </endpointBehaviors> </behaviors> <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" /></system.serviceModel>
anybody see anything wrong with the configuration?
In my svc file, I have the following:
[ServiceContract(Namespace = "DKS.MDM.StyleCreate.Presentation")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
and on the contract method, I have:
[OperationContract]
public RadComboBoxData LoadComboItems(RadComboBoxContext context)
{
...
}