Miguel A. Castro's Blog

# Wednesday, February 01, 2012

Funny how 10 years ago, I was reading publications and listening to sessions by many of the people that today I have the honor and pleasure of calling my friends. It’s been a hell of a ride being active in the .NET community and I owe a lot of the beginnings of that to INETA. Traveling around the country, speaking at user groups and meeting many, many talented developers (some of whom have become friends of mine) has been one of the highlights of my community involvement. It was another good friend of mine, Bill Wolff, that introduced me to INETA and since then there have been a number of good people involved. Nancy, Scott, Rob, Chris, Trish, Lori, and many others. All of them made the organization a big priority in their lives and careers and it thrives today because of that collective effort. And it’s not just about the fun I and others have had as speakers; many user groups owe a lot to INETA for their support. I hope the organization continues to be the glue for the symbiotic relationship between those who run the groups and those who speak at them.

So a lot has evolved and changed over the years in the formula that defines the interaction between the groups and the speakers, but one thing has remained. INETA is still the primary user group support mechanism out there. I still get to travel around and speak to great developers around the country and sample what they try to pass of as pizza (they forget I’m from Jersey).

Happy anniversary INETA; may the next 10 years be even better, even though pizza outside of Jersey will probably get worse.

Until next time…

Wednesday, February 01, 2012 11:26:58 AM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - - Follow me on Twitter

# Friday, April 15, 2011

I’m headed to the Visual Studio Live conference in Las Vegas on Sunday. I'll be doing a full-day precon on WCF on Monday then two WPF talks on Tuesday.

If you’re going to be there, please stop by and say hi !

Friday, April 15, 2011 12:26:50 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [3] - - Follow me on Twitter
Speaking Events
# Friday, March 25, 2011

Update:

Nice blog post from an attendee: http://bejabbers2.blogspot.com/2011/03/inaugural-devready-event-on-mvvm.html

----------------------------------------------------

A big thank you to all who made it out to the DevReady MVVM events we put together on the 19th and the 21st in the Microsoft Philly and NYC offices!

The turnout was fantastic and the feedback I’ve seen so far has exceeded my expectations.

We had five sessions set up and they went as follows:

  1. XAML: Achieving your moment of clarity
  2. Programming with MVVM
  3. Programming with MVVM – Advanced Topics
  4. Platform Reusability with MVVM – also known as “How MVVM saved my butt and how laziness came back to bite me”
  5. Intro to Prism – previously “Leveraging Controls to Build XAML-based applications”

The first three sessions were done by me in what can be construed as a very painful delivery process, but not because of the sessions. A couple of days before, I woke up with an inflamed nerve in my left hip and I was in pretty intense pain for a while. I was walking with a cane and was popping Alleve like Dr. House pops Vitaken. By the time the first event (Philly) came around, I was better but nowhere near 100%. Luckily it was offset by a beautiful day on Thursday and I got to ride from Jersey down to Philly Intl. with the top down, seriously raising my mood.

What was I doing in Philly Intl you ask? That gets me to the most important point regarding these events. I was picking up a friend of mine who’s an evangelist for DevExpress. DevExpress graciously put up the sole sponsorship for both these events and provided everyone with both breakfast and lunch, along with several product licenses. On top of that, they flew Seth Juarez out to deliver one of the sessions, during which Seth also demonstrated the power and versatility of using DevExpress tools in WPF and Silverlight while also teaching attendees how to use the Prism framework.

Dani Diaz, the Microsoft Developer Evangelist for the Philly area delivered the fourth session at both events. Dani did a terrific job showing everyone how to take what I had just taught them and reuse it among a desktop and Phone 7 application.

Also, a great thank you to my own Developer Evangelist, Peter Laudati, for putting together all the tedious logistics at the NY offices. Anyone who has ever tried to throw an event in any Microsoft office knows that it is not a trivial process logistically and kudos goes out to both Peter and Dani for grabbing the bull by the horns on this one.

We’ve already received requests for repeating this event in other regions, possibly starting with the Capital Area, so DC here we come.

Once again, thank you to all involved in the events and thank you to the attendees for making it so much fun and putting up with my bizarre and sometimes unorthodox sense of humor; and most of all thank you to Developer Express, without whom these events could not have taken place.

Stay on top of the DevReady web site. There you can find out about more events and also about exactly what the DevReady concept is.

My session material for both these events can be found on the Downloads section of this site. The rest can be found on the DevReady web site.

 

Until next time…

Friday, March 25, 2011 11:34:28 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [2] - - Follow me on Twitter

# Wednesday, March 09, 2011

I’m running two events in the northeast called MVVM DevReady coming up this month.

The first one is in Philly (Malvern actually) and will run on Saturday the 19th of March.  The second is the following Monday, the 21st, in the NYC Microsoft office.

Both events are FREE of charge but registration is limited and is quickly filling up.  We just put up the registration site yesterday and are more than half full already.

I will be giving the first three sessions, with the local DE giving the fourth, and our sponsor providing the last session of the day. These events could not have been possible if not for our sponsor, Developer Express.  They are not only covering event expenses but are flying out one of their chief evangelists, Seth Juarez, to present the session personally.

The registration sites are:

3/19/2011 - Philly: http://devready-estw.eventbrite.com/

3/21/2011 - NYC: http://devreadynyc.eventbrite.com/


Get your development skills ready for MVVM (Model View View Model Design Pattern) and build some exciting applications for WPF, Silverlight or Windows Phone. In this all day event you will learn everything you need to know to get start with MVVM. We will start with the basics and end with some more advance topics.

Wednesday, March 09, 2011 3:17:43 PM (Eastern Standard Time, UTC-05:00)  #    Comments [9] - - Follow me on Twitter
Dev Stuff | Speaking Events
# Sunday, January 23, 2011

I’ve been beating my head against the wall with a small problem and after lots of trial and error, and some searching around, I found the answer – and it was NOT obvious !

The problem space was simple and common:

I have placed a lot of my styles, data templates, and converters into separate XAML files (ResourceDictionaries), with the idea of just declaring them in the App.Xaml since I’m pretty much using these all over the application.  I started out declaring things in my App.Xaml like this:

 

<Application.Resources>
    <controls:BooleanToVisibilityConverter x:Key="booleanToVisibilityConverter" />
    <refractionConverter:ReverseBooleanToVisibilityConverter x:Key="reverseBooleanToVisibilityConverter" />
    <refractionConverter:PercentageConverter x:Key="percentageConverter" />
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary>
            </ResourceDictionary>
            <ResourceDictionary Source="Resources/SharedResources.xaml" />
            <ResourceDictionary Source="Resources/MdiTemplates.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

 

Looks simple enough right?  Wrong.

The second I moved the converters from the individual User Controls to the App.Xaml, styles that are declared in the SharedResources.xaml file became unreachable.  In my debugging efforts, I tapped into the Application_Startup event to examine the resources that WPF was loading.  I noticed that the value of this.Resources.Count was 4, but the value of this.Resources.MergedDictionaries.Count was 0

So I continued digging and here’s what I found out:

Once you commit to using MergedDictionaries in your App.Xaml, you must use them for everything.  I moved the three converters inside the MergedDictionaries section and tested the debugging again.  This time, this.Resources.Count was set to 0, and this.Resources.MergedDictionaries.Count was set to 3.  This told me the resources I listed as MergedDictionaries were now loading.  The key indicator that things were better is that my styles now worked.

Here’s the code:

 

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary>
                <controls:BooleanToVisibilityConverter x:Key="booleanToVisibilityConverter" />
                <refractionConverter:ReverseBooleanToVisibilityConverter x:Key="reverseBooleanToVisibilityConverter" />
                <refractionConverter:PercentageConverter x:Key="percentageConverter" />
            </ResourceDictionary>
            <ResourceDictionary Source="Resources/SharedResources.xaml" />
            <ResourceDictionary Source="Resources/MdiTemplates.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

 

I hope this helps since believe it or not, though there’s a lot of code samples out there, much of it is unclear and flat out wrong.

Until next time…

Sunday, January 23, 2011 3:24:02 PM (Eastern Standard Time, UTC-05:00)  #    Comments [0] - - Follow me on Twitter
Dev Stuff | WPF
Search
Me & My Flair

Read all about me here.
Download my Resume here.

Check out where I am here.
 
Click on logos above for profiles.
Archive
<February 2012>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910
Statistics
Total Posts: 36
This Year: 1
This Month: 1
This Week: 0
Comments: 80