iSeller Commerce
iSeller POS Retail
iSeller POS F&B
iSeller POS Express
Crosslight
WebUI
ClientUI
What's New
Download Trial
Web Solution
Mobile Solution
Enterprise Solution
Custom Development
Blog
Community
Latest Development Blogs
ForumPostTopic
Browse By Tag
Hi,
I understand that there is a template used when creating crosslight projects. The wizard is also fascinating; however, is there any guide wherein we can start projects from scratch? Are there any technical documentations for the setup class files like Infrastructure\AppService.cs? Or what is IApplicationInitializer? When can we use InitializeApplication, InitializeComponent, InitializeServices? Does it support dependency injection via constructors? Things like that...
Using crosslight is targetted for multiple platform (I get that), but we can't always focus on platform-specific (views) at the same time even with 90% shareable code. So we might skip other projects. Do you have plans on creating crosslight project templates individually?
In addition, does crosslight support viewcontrolles created via code? If so, how do we create views and child controls in order for crosslight to bind the view and viewmodel properly? Here's a sample project in an attempt to start from small beginnings. The binding in this project don't work, so kindly review if you can.
Many thanks!
Hello Domingo,
Welcome to Crosslight Community Forum!
Crosslight is entirely built upon Dependency Delegation architecture which offers the utmost flexibility and extensibility support. Unlike other frameworks, Crosslight features powerful yet high-performance dependency injection which supports constructors injection, methods injection, nested child container, configurable container lifetime, and best of all, they are built with developer-friendly API.
You can register a resolver with constructor injection using lambda function overload such as shown below.
Container.Current.Register<IEntityContainer>("Default", (c) => new EntityContainer()).WithLifetimeManager(new ContainerLifetime());
The above example also uses container life time, which means every Resolve will return the same instance, if it was created previously.
You can register a resolver with nested constructor injection such as shown below.
Container.Current.Register<IEntityContainer>("Default", (c) => new EntityContainer(c.Resolve<IUserRepository>)).WithLifetimeManager(new ContainerLifetime());
Notice that you can resolve another instance from the container at runtime, just in-time when the parent/root container is being resolved.
You can find more methods in the IDependencyResolver members, available in the Intersoft.Crosslight assembly.
With regards to the documentation, we're preparing a major launch on a new developer center which features comprehensive API documentation. This will be launched on the same time with the much anticipated Crosslight 2.0 release. Expect a quality close to Apple's and Android's developer center soon.
At the meantime, please feel free to ask any questions in the community forum here. We'll be pleased to assist.
Best,Jimmy
Hello,
Can you re-attach or re-upload the sample with another links? The current one was corrupted.
however, is there any guide wherein we can start projects from scratch? Are there any technical documentations for the setup class files like Infrastructure\AppService.cs? Or what is IApplicationInitializer? When can we use InitializeApplication, InitializeComponent, InitializeServices? Does it support dependency injection via constructors? Things like that...
Actually, We expect user only need to use our extension without need much configuration or do from the scratch. The wizard is only the tools to help user easily do the development. But if you want to do from the scratch, you can try to see more explanation in here.
Thank you for the feedback. Actually, you can uncheck which platform that you want to create with our wizard.
Surely,it does support. In InitializeView, you can call this.RegisterViewIdentifier("AddButton", addButton);Which "AddButton" is the outlet of the view and "addButton" as the button view itself. This should be registerred in the Binding Provider. For more information, you can refer into this link, under 'Registering a View Identifier at Runtime'.
Regards,Handy
Hi!
Thanks for your response. File has been re-attached.
or
Choose this if you're already a member of Intersoft Community Forum. You can link your OpenID account to your existing Intersoft Social ID.
Choose this if you don't have an Intersoft account yet. Your authenticated OpenID will be automatically linked to your new Intersoft account.
Enter your Wordpress Blogname