I am trying to use Blend 3.0 to edit a project that contains some WPF controls. This project already compiles and runs fine from Visual Studio 2008.
In Blend however, I'm getting mysterious errors that make no sense:
For example, I have a class that derives from Control :
namespace Company.WPFControls.SearchTextBox
{
public class SearchTextBox : Control
{
...
}
}
And I try to use it in a resource, in the same assembly, to assign a style:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Company.WPFControls.SearchTextBox"
<Style TargetType="{x:Type local:SearchTextBox}">
...
</Style>
</ResourceDictionary>
I get the following error in Blend:
The name "SearchTextBox" does not exist in the namespace "clr-namespace:Company.WPFControls.SearchTextBox".
I've tried specifying the assembly name, by adding ;assembly=Company.WPFControls
but it doesn't remove the error.
Is there any way to fix this or at least figure out where the problem comes from?
I had the same problem with Blend 2, on a Windows Vista 64.
I normally compile my solution in VS2008, with a "Debug - x86" target on all my projects, so that it's compatible with some other 32 bits-only projects.
It looks like Blend loves the "Debug - Any CPU" targets. I basically changed my configuration manager so that it targets Any CPU platforms instead of x86.
So...
I did the opposite to verify if it was really that, and it seems yes... I simply reverted the solution changes back to Debug - x86, cleaned everything, and rebuilded, and I was still back with the error "Does not exist [...]"
As for the "Why?"... I don't know, but at least it works now!