Is this MVVM framework worthwhile?

Coordinator
Aug 11, 2011 at 2:19 AM

Do others see value in using a framework like this?

I see a lot of value in implementing ViewModels without having to write out boilerplate properties, commands, etc.

What do other people think?

Aug 18, 2011 at 10:55 AM

Seems very easy to use.

When do you think silverlight will be supported?   I have to start a new little project, and want to do this with noMvvm.

Coordinator
Aug 18, 2011 at 12:26 PM

I actually started implementing this yesterday.

I'm having a slight issue with the Silverlight version of MEF acting different than the desktop version.  Once I get that figured out, it should be close to ready.

It should show up in the source control in less than a week.  A new release would be a little longer, but not much (main issue is getting documentation updated).

Coordinator
Aug 18, 2011 at 1:52 PM
Edited Aug 18, 2011 at 1:53 PM

Hmm, issue does not seem to be with MEF (it just didn't provide me the underlying error message).

I'm having to get a Silverlight implementation of weak events, I original started using the one from Cinch--but apparently it doesn't work when you start doing dynamic black magic...

Coordinator
Aug 21, 2011 at 4:51 AM
Edited Aug 21, 2011 at 4:54 AM

Well, got good news and bad news...  Got weak events working after modifying the code from Cinch.

But it turns out that data binding to dynamic objects is not supported in SL4.  They are planning on fixing this in SL5 with a new interface.

But good news, I've come up with a workaround to make NoMvvm usable from Silverlight/WP7 (although slightly less elegant).

SL4 supports data binding to indexers, like so:

 

<TextBox Text="{Binding [Woot]}" />

 

This would bind to an indexer with string "Woot", with INotifyPropertyChanged still working as expected.  I was able to hook this up with the IDynamicObjectProvider NoMvvm uses for it's ViewModel class.

You can check out the latest source to play around with it.  I should be getting version 1.0.1 out shortly, but I want to clean up a few things first.

Sep 14, 2011 at 1:40 PM

Hey, I saw your project on nuget. I have a similar project, but it focuses mainly just on the view model and removing boiler plate for properties, commands and events, but isn't as encompassing and doesn't really go into view management etc. I think we have a lot of overlap, I use a lot of dynamic black magic.

ImpromptuInterface.MVVM

http://code.google.com/p/impromptu-interface/wiki/UsageMVVM

http://code.google.com/p/impromptu-interface/wiki/UsageMVVMAdvanced

Coordinator
Sep 14, 2011 at 1:52 PM

Hey, I've actually seen your project and love it.  I like the ability to cast a dynamic object to a strongly typed interface--enables you to register them into an IoC container.

I would certainly be open to putting alot of the stuff NoMvvm does on top of Impromptu, as I don't really want to rewrite the cool dynamic stuff it can do.  I'll send you my email through codeplex if you want to talk more.

I have some other things in NoMvvm and dynamic that are awesome with TDD, you might want to check out here.  I think I could expand some other TDD concepts (mocking in particular) with some features from Impromptu.