private void BindToGrid_Execute(object sender, SimpleActionExecuteEventArgs e) { ReportCentral rc = (ReportCentral)View.CurrentObject; GridForm gridForm = new GridForm(); gridForm.LayoutData = rc.GridViewXML; gridForm.DefaultLayoutData = rc.GridViewXML; if (rc.ReportCentralLayoutData.Count > 0) { foreach (ReportCentralLayoutData layout in rc.ReportCentralLayoutData) { if (layout.Owner.Oid.ToString() == SecuritySystem.CurrentUserId.ToString()) { gridForm.LayoutData = layout.GridLayout; } } } gridForm.ConnectionString = rc.Connection.ConnectionString; gridForm.QueryString = rc.QueryString; gridForm.ReportName = rc.Name; if (rc.CreatedBy.Oid.ToString() == SecuritySystem.CurrentUserId.ToString()) { gridForm.IsOwner = true; } List <ParameterDefinition> list = new List <ParameterDefinition>(); rc.Parameters.Sorting.Add(new SortProperty("ParameterIndex", DevExpress.Xpo.DB.SortingDirection.Ascending)); if (rc.Parameters.Count > 0) { foreach (ReportParameter param in rc.Parameters) { ParameterDefinition definition = new ParameterDefinition() { ParameterCaption = param.Caption, ParameterName = param.Name, ParameterPropertyType = param.ParameterType.Type, ParameterDefaultValue = param.DefaultValue, ParameterIndex = param.ParameterIndex }; if (param.ParameterType.Type == BusinessObjects.ParameterPropertyType.DataSource) { definition.ParameterConnection = param.ParameterType.Connection.ConnectionString; definition.ParameterQueryString = param.ParameterType.QueryString; } list.Add(definition); } gridForm.ParameterDefinition = list; } gridForm.Save += GridForm_Save; gridForm.SaveDefaultLayout += GridForm_SaveDefaultLayout; gridForm.ShowGridForm(); }