No problems for asking! I am not entirely sure when the final release of V4 will take place. In fact, seeing the very positive response for the new bits, it might very well happen earlier than I had initially planned. That means that some of the features I wanted to build in V4 could come later, in a V5.
However, before I do V4, i have a couple of bugs I need to take care of. I am not sure exactly when I can do that. Let's go on a whim here and say that i hope I can release V4 this summer (but standard disclaimers apply
@Robert Kozak: The reason why I do not like to use IValueConverter is that it is a performance killer in WP7 lists. The scrolling is already not very good there, so adding a converter between the property and the value will cause the scrolling to be even more jerky. On the other hand, if you do Silverlight 4 only, then using a BooleanToVisibilityConverter is a bit cleaner I agree.
Both Glenn Block and I (who are pretty strict about the code) agree that adding Visibility and avoiding the converter is acceptable if it provides a better UX. But I totally agree that if it causes an issue when porting the code, then you should use something else. As usual in software engineering, the correct answer is "it depends"
@robertd: It is a compromise between small resolution (the projector was 1280x720 which is already wider than the usual 1024x768), 120% font size in Studio but not wanting to go higher in size otherwise I would have to scroll horizontally too much (which I already did in a few places, and I hate that). It is hard to find a good compromise. Hope it didn't spoil the video completely for you
@HelloWorld: Thanks so much for the feedback. I appreciate that not everyone likes the same implementations, and it is fine. Let me explain why I chose this aproach:
- JSONDemo: I do realize that some people dislike it, and honestly it is fine if you prefer the alternative way you describe. I rather met people who prefer avoiding replicating the properties, but if that works for you, by all means, go for it. About the proxy, note that WCF created proxies do in fact implement INPC, so they follow the same kind of things I am showing here. Not saying it is better, just saying it is the same
Yes, if Friend inherits something, this does not work. In which case you can just implement INPC manually, which is not a huge deal.
- DialogService / DialogControl
Yes there is, however I wanted to show the example in WP7 where I saw a LOT of ugly MessageBoxes being used The custom control I demoed is one that I happened to use on some production applications myself, I thought it was cool. The point was that the showing of the dialog is the responsibility of the view, and that you can make one yourself, or use a popup, or...
My IDialogService, the IDialogControl and the PhonePageBase are also part of my WP7 library. The Custom Control is not, because I like to tweak it with colors and design, so I just have a project template for VS10 that has this control within. Here too, I just inject IDialogService, and voila.