Genom
Topic Author
Posts: 47
Joined: 04 Dec 2014, 14:47

Differences with WPF documentation

02 Feb 2015, 11:51

Hi, I had to spend many hours to figure out why this code in my ViewModel was failing with error "Property 'Domingas' not registered..."
public List<string> Domingas
 {
            get { return _domingas; }
            set
            {
                _domingas = value;
                NotifyPropertyChanged("Domingas");
            }
}
and I found the possible answer here in this thread viewtopic.php?f=3&t=386
Our API provides a custom list with change notifications already implemented, the Collection class. You have to use this one by now (in a future we would like to improve this and support .net default array and containers).
Is this documented in some place I missed? if not I think working with binded collections at viewmodel side should be widely documented including examples. I really like NoesisGUI but I find myself learning it manually by try-error coding several times because I expected some specific behaviour from wpf.

Have you considered to document a list (control by control, or by groups of controls) of differences with WPF? it really would save us a lot of time and it could help to track changes of these differences as new releases update them (plus community workarounds suggestions).
 
User avatar
Scherub
Posts: 141
Joined: 06 May 2014, 20:53
Contact:

Re: Differences with WPF documentation

02 Feb 2015, 15:02

Changes within your list wouldn't notify the UI even in WPF if you just bind it to a standard generic list. You would have to either to use a special view or a ObservableCollection<>. The latter one does also exist in Noesis v1.2. Tbh I would suggest to use Noesis v1.2 as the API is much cleaner and a lot closer to WPF, unless you're going to release a product within the next two months.

But this is only my opinion. You should ask the developers whether you should switch or not.
 
User avatar
jsantos
Site Admin
Posts: 2904
Joined: 20 Jan 2012, 17:18
Contact:

Re: Differences with WPF documentation

02 Feb 2015, 15:05

Hi,

Sorry for that. This is something we fixed in v1.2. Now we fully support the IList interface, and also you no longer need inheriting from Noesis.BaseComponent for each item.

There is a minor tutorial for this in the Native SDK, but nothing regarding how to do it in Unity (apart from this Data Binding Tutorial). I am personally reviewing all the tutorials and documentation for the v1.2 release. These details are going to be explained thoroughly.

Regarding the matrix of NoesisGUI vs WPF, in the Class Browser we provide a link to the WPF class for that purpose (for example). Although we probably should have a big table comparing core functionality (your problem with IList should be documented here).

I have added this to our internal list of requests.

Thanks for the feedback.
 
User avatar
jsantos
Site Admin
Posts: 2904
Joined: 20 Jan 2012, 17:18
Contact:

Re: Differences with WPF documentation

02 Feb 2015, 15:09

Changes within your list wouldn't notify the UI even in WPF if you just bind it to a standard generic list. You would have to either to use a special view or a ObservableCollection<>. The latter one does also exist in Noesis v1.2. Tbh I would suggest to use Noesis v1.2 as the API is much cleaner and a lot closer to WPF, unless you're going to release a product within the next two months.

But this is only my opinion. You should ask the developers whether you should switch or not.
Today we should release b8. It fixes many problems (apart from adding iPhone). Yes, we also suggest going to v1.2 if you don't need iPhone/Android.
 
Genom
Topic Author
Posts: 47
Joined: 04 Dec 2014, 14:47

Re: Differences with WPF documentation

02 Feb 2015, 16:54

Hi guys, thanks for answering.
As you commented, we need to test for android/ios at the same time we develop because we have many otherscomponents to test, specially for iOS where crappy dynamics call in linq are like antipersonal mines, you know that staff.. (otherwise we'd already be using the 1.2b) so I think this is a trade-off we have to asume, anyway we can handle with Noesis.Collection as we are not intensive using Table o heavy lists but forms for Crud in the short run. You are not planning to include the android/ios builder in the beta before the release, aren't you?

By the way, what you've mentioned about ObserbableCollections, are they available for 1.14 alread? I've seen a git project about it, but I'm not checked if it is for 1.2 or 1.14

cheers!
 
User avatar
Scherub
Posts: 141
Joined: 06 May 2014, 20:53
Contact:

Re: Differences with WPF documentation

02 Feb 2015, 17:29

ObservableCollections are afaik only available in v1.2.

(And yes, many things are very cumbersome due to the missing JIT functionality under iOS. I'm currently writing an ORM for Unity and even if it is working pretty well in general I still haven't solved various problems under iOS.)
 
Genom
Topic Author
Posts: 47
Joined: 04 Dec 2014, 14:47

Re: Differences with WPF documentation

02 Feb 2015, 19:40

Ok, I'm looking forward to have the 1.2 release : D

About persistance, our approach is Siaqodb (nosql) + Repository Pattern (ClientRepository within a ClientContext-kinda' client uow communicating with a ServerContext and their ServerRepositories through our own SignalR implementation).

I have to try the Linq to ios lib which supposes to bring whole Linq working in iOS (the dammed siaqodb does not implement OrderBy...) and then I think we can have something stable and powerful at client side. The big handicap is just debuggin with Unity, it crashes constantly...
 
User avatar
jsantos
Site Admin
Posts: 2904
Joined: 20 Jan 2012, 17:18
Contact:

Re: Differences with WPF documentation

02 Feb 2015, 20:02

We just released b8 with iOS support. I think it is a good opportunity to switch to v1.2
By the way, what you've mentioned about ObserbableCollections, are they available for 1.14 alread? I've seen a git project about it, but I'm not checked if it is for 1.2 or 1.14
ObservableCollection<T> and many new features related to generics and IList are not going to be available in the v1.x branch. We consider this a new feature of noesisGUI more than a bugfix.
The big handicap is just debuggin with Unity, it crashes constantly...
We have a few clients that are already using the Windows Store platform (available in v1.2 beta) just for debugging, because you can do everything inside Visual Studio (Mono is not used) besides you have amazing profilers. Even if this is not a target platform for you I would recommend it.
 
User avatar
Scherub
Posts: 141
Joined: 06 May 2014, 20:53
Contact:

Re: Differences with WPF documentation

02 Feb 2015, 20:55

I tried Siaqodb in one of my projects but in the end it had too many drawbacks, such as various annoying bugs, not so good customer support, upgrading the data structure seemed to be impossible without losing various data, references didn't always work, only one not really good tool for viewing/editing data, etc. (Be aware that I can only speak for myself and about the time when I used Siaqodb. Things might have changed.)

Then I looked around in the Unity Asset Store and found SimpleSQL which used the work of another person and built its own part on top of it. But the whole architecture seemed to be not so clearly structured and in the end you have to continue writing your own SQL statements.

So last year in October/November I decided to write my own ORM framework that supports primarily SQLite and I'm already working on MySQL support. Unfortunately I also had to write my own SQLite .net Wrapper as it is not an easy task get SQLite .net properly working under Unity without adding various other dependencies.

Then I started working on a small mobile game as I not only wanted Unit Tests but wanted an applicable example so I could figure out where problems may occur and what is still needed. By that time I also realized that under iOS I couldn't just write dynamic code and compile it at runtime as iOS only utilizes AOT. But now I think/hope I'm very close to a solution.

From the API perspective it is similar to NHibernate as this is one of the ORM frameworks that I'm most familiar with. So in the end it's Linq2SQL and works kinda similar to Siaqodb.

Oh, and sorry for being off topic. :)

@jsantos: Thanks for releasing the new beta. I'll try updating tomorrow and perhaps I can get it running under iOS again. :)

Who is online

Users browsing this forum: samc and 2 guests