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 Manuel,
For your information, Intersoft.AppFramework use asynchronous task so you will have to add Microsoft BCL package to your project through Nuget Package Manager. I am glad that you are able to solve this issue.
Best Regards,Leo
Hi Jimmy,
For your information, Custom Bindable Properties and Binding Adapters only work for binding from ViewModel to view item (ex: TextView), not for binding to view context (ex: Activity). Usually, Bindable Properties and Binding Adapters was used to create a binding for custom view or extending existing binding adapter of a view item (ex: TextView) to add a new property binding, like the one described in Create Custom Bindable Properties and Binding Adapter. Hope this will help you.
From your descriptions, I will assumpt that you have knowledge about how to implement custom services in crosslight. In case that you have not, you could refer to Extending Crosslight Tutorial.
And assuming that you have able to bind those events from library SDK to your view (viewcontroller/activity), you could invoke viewModel method from the event handler (ex: this.ViewModel.OnPrintDone()) on your view (viewcontroller/activity). To make your code look more organized, you could create an Interface, ex: IImplementPrintServices, that will describe all method should be implemented by ViewModel that used that custom service.
How can we implement these events or listeners wherein we can bind each to a viewmodel like a CommandProperty does?
For your information, binding like that only work for binding from viewmodel to view item, so it will not work with service. In case you interested in creating a custom binding adapter, you could refer to Create Custom Bindable Properties and Binding Adapter. Hope this will help you.
Hi Thomas,
Sorry about the link, I have fixed that. Now the link should have pointed to Crosslight4_0_5000_303 hotfix that you have downloaded.
For your information, Programmatically change SelectedItem Property in Standard Interaction Mode issue has been fixed. You should be able to find the hotfix from this link. This hotfix also include fix for SelectedItems issue on this thread.
note : It is recommended to removed the work around that have been suggested previously before you applied this hotfix.
Edit : Hotfix Link has been fixed.
For your information, Programmatically change SelectedItems property in ViewModel in editing mode issue has been fixed. You should be able to find the hotfix from this link.
Okay, now I get most of it. To tell you the truth, just as you said, the whole A (List A, Modal Editor A, Modal List A) on your description before confused me. Thanks for your description.
To manipulate item on other viewModel, you need to used event aggregator. For your issue with new Item, please let me clarified two thing. Did you add a new Item without saving it to server and only save it after the Item on Modal Editor A has been saved? If so, I recommend you to save the item to server first before you manipulate it again later (when item on Modal Editor A saved). Another option is manual trigger the save on item (example: this.Repository.Insert(this.SelectedItem); ) when the item is a newly added item (have not been saved).
Regards,Leo
I would like to confirm several thing about your scenario :
1. you tried have save your item on Modal Editor A, once the save was done (navigation was closed), your current state should be on Editor A. But somehow from your statement, you tried to once again save your item on List A which I take as the view you are on when Modal Editor A was cloased. Could you tell me how you navigate to List A after Modal Editor A was closed? Did you mean you navigate to List A when Modal Editor A.ExecuteSave operation has been completed?
2. Based on your statement :
we need to manipulate the SelectedItem on List A and should be saved after the changes on Modal Editor A has been executed.
The SeletedItem on List A should be the same as the saved item on Modal Editor A (cmiiw). Could you tell me the reason why you need to save the item twice?
3. When Modal Editor A.ExecuteSave was called the editor should show an activity presenter and wait for item successfully saved to databased before it was closed (I assume that your Modal Editor A viewModel was extend from DataEditorViewModelBase). If it was true, when you navigate back to List A, your Modal Editor A should have saved your entity (save was done).
It seem that your scenario was a bit unique. Could you tell me the objective of your scenario? For the time being, I will tried to reproduce this issue on my local end. It will be great help if you could provide me with a sample and a video about how to reproduce this issue.
Crosslight don't support Watch Kit project for now. I have made a feature request for this and will give you an update once this feature have been implemented.
For your information, Entity Framework works best when database leaves all the logic to the Entity Framework code. In a case where your database trigger was complex and required more time, you could adopt one of below options:
1. Let Entity Framework to handle all complex trigger logic.2. Make client side to reload the entity after save was done. (I believe that hotfix for GetSingleAsync issue will be available soon)3. If you know the estimated time the trigger process will finish, you could wait several second before reload the data.
About disposing the DbContext and create a new one, may be you could create the new DbContext while leaving the original one then get the required data from the new context.
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