public void ModifyGridViewInstance(ExpressApp.MasterDetail.Win.IMasterDetailColumnView masterGridView, int rowHandle, int relationIndex, IModelListView masterModelListView, List<MasterDetailRuleInfo> masterDetailRules) { var modelDetailRelationCalculator = new ModelDetailRelationCalculator(masterModelListView, masterGridView, masterDetailRules); bool isRelationSet = modelDetailRelationCalculator.IsRelationSet(rowHandle, relationIndex); if (isRelationSet) { IModelListView childModelListView = modelDetailRelationCalculator.GetChildModelListView(rowHandle, relationIndex); Window window = _xafApplication.CreateWindow(TemplateContext.View, null, true, false); ListView listView = GetListView(modelDetailRelationCalculator, rowHandle, relationIndex, childModelListView); var detailXafGridView = (ExpressApp.MasterDetail.Win.IMasterDetailColumnView)masterGridView.GetDetailView(rowHandle, relationIndex); ((IColumnViewEditor)listView.Editor).CustomGridViewCreate += (o, eventArgs) => { ((IColumnViewEditor)o).DataSource = detailXafGridView.DataSource; eventArgs.Handled = true; eventArgs.GridView = (DevExpress.XtraGrid.Views.Base.ColumnView)detailXafGridView; eventArgs.GridControl.DataSource = detailXafGridView.DataSource; }; EventHandler[] listViewOnControlsCreated = { null }; listViewOnControlsCreated[0] = (sender, args) => { detailXafGridView.MasterFrame = masterGridView.MasterFrame ?? _masterFrame; detailXafGridView.Window = window; detailXafGridView.GridControl = masterGridView.GridControl; listView.ControlsCreated -= listViewOnControlsCreated[0]; }; listView.ControlsCreated += listViewOnControlsCreated[0]; ((PropertyCollectionSource)listView.CollectionSource).MasterObject = masterGridView.GetRow(rowHandle); window.SetView(listView); } }
public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Home/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } ExpressApp webApp = app.ApplicationServices.GetRequiredService <ExpressApp>(); if (webApp.UseHttpsRedirection) { app.UseHttpsRedirection(); } app.UseStaticFiles(); if (webApp.SpaSettings.Count > 0) { app.UseSpaStaticFiles(); } app.UseRouting(); app.UseAuthentication(); if (webApp.UseIdentityServer) { app.UseIdentityServer(); } app.UseAuthorization(); app.UseRouter(routeBuilder => { foreach (Action <IRouteBuilder> setupAction in webApp.RouteSetupActions) { setupAction.Invoke(routeBuilder); } }); app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); endpoints.MapRazorPages(); }); foreach ((string sourcePath, string devServerNpmScript) in webApp.SpaSettings) { app.UseSpa(spa => { spa.Options.SourcePath = sourcePath; if (env.IsDevelopment()) { spa.UseReactDevelopmentServer(npmScript: devServerNpmScript); } }); } }
private void UpdateActionState(ExpressApp.Win.Editors.XpandFilterControl xpandFilter) { xpandFilter.EditorActivated += edit => { if (edit is LookupEdit) ((LookupEdit)edit).QueryPopUp += (o, args) => { RecursiveFilterPopLookUpTreeSelectionSimpleAction.Active["Default"] = true; lookUpQueryPopUp = true; }; }; }
public void ConfigureServices(IServiceCollection services) { ExpressApp webApp = services .Select(descriptor => descriptor.ImplementationInstance) .OfType <ExpressApp>() .Single(); foreach (Action <IConfiguration> configureServiceAction in webApp.ConfigureServiceActions) { configureServiceAction.Invoke(Configuration); } services.AddDatabaseDeveloperPageExceptionFilter(); services.AddControllersWithViews() .AddApplicationPart(Assembly.GetEntryAssembly()) .AddRazorRuntimeCompilation(); services.AddRazorPages(); }
DevExpress.XtraGrid.Views.Base.ColumnView GetLevelDefaultViewCore(IModelListView masterModelListView, ExpressApp.MasterDetail.Win.IMasterDetailColumnView masterGridView, int rowHandle, int relationIndex, List<MasterDetailRuleInfo> masterDetailRules) { var modelDetailRelationCalculator = new ModelDetailRelationCalculator(masterModelListView, masterGridView, masterDetailRules); bool isRelationSet = modelDetailRelationCalculator.IsRelationSet(rowHandle, relationIndex); if (isRelationSet) { IModelListView childModelListView = modelDetailRelationCalculator.GetChildModelListView(rowHandle, relationIndex); ListView listView = GetListView(modelDetailRelationCalculator, rowHandle, relationIndex, childModelListView); DevExpress.XtraGrid.Views.Base.ColumnView defaultXpandXafGridView = null; EventHandler[] listViewOnControlsCreated = { null }; ListView view = listView; listViewOnControlsCreated[0] = (sender, args) => { defaultXpandXafGridView = ((IColumnViewEditor)((ListView)sender).Editor).GridView; view.ControlsCreated -= listViewOnControlsCreated[0]; }; listView.ControlsCreated += listViewOnControlsCreated[0]; listView.CreateControls(); return defaultXpandXafGridView; } return null; }
public DevExpress.XtraGrid.Views.Base.ColumnView GetLevelDefaultView(ExpressApp.MasterDetail.Win.IMasterDetailColumnView masterGridView, int rowHandle, int relationIndex, IModelListView masterModelListView, List<MasterDetailRuleInfo> masterDetailRules) { return GetLevelDefaultViewCore(masterModelListView, masterGridView, rowHandle, relationIndex, masterDetailRules); }