Sunrise

Sunrise
Sunrise

Tuesday, June 12, 2007

Mental Note

Writing myself a mental note in case this happens again. I guess it's not really a mental note if I write it down though is it...?

When moving a user control that referenced another assembly into a user control within that assembly, remove the assemblyname attribute from the clr-namespance declaration. It will spit the dummy and tell you that the tag does not exist in the namespace when you can clearly see that it does. Another idicator that this is happening is if you hover over the InitializeComponent() method in the constructor it will ask if you want to generate the method stub.
So if you've got :-
xmlns:poo="clr-namespace:CompanyName.Product.Client.Support.Controls.Reports;assemblyname=CompanyName.Product.Support">

and you're now using the poo reference from within itself it will not compile. You need to change it to :-
xmlns:poo="clr-namespace:CompanyName.Product.Client.Support.Controls.Reports">

While I'm on it, another issue that I came across yesterday was getting a dependency property to work from within a usercontrol. I had it all wired up correctly but it didn't seem to be working. Upon consultation with the guru it was due to the fact that I hadn't specified the DataContext of the usercontrol to itself.

No comments: