Question

Today I stopped being able to compile my WPF project. I started getting a host of errors such as "The attachable property 'Behaviors' was not found in type 'Interaction' in the (xxx xaml file)."

I haven't changed any references (I have both the "Microsoft.Expression.Interactions" and "System.Windows.Interactivity" dll's referenced still in my project).

UPDATED: The errors I am getting are similar to this one: "Error 15 The type 'i:EventTrigger' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built. (Xaml Filename here)"

i: is defined as: "xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity""

When recompiling it is now getting these errors. As mentioned above I still have those same DLL references in the project. I don't know what could have changed.

Thanks.

MORE COMPLETE INFORMATION:

This code had been running fine for hundreds of ongoing compiles over a year and a half.

  • The only real change recently that I can think of is that yesterday I did a complete uninstall of Visual Studio 2013 RC. I don't know how this could make a difference though, and the referenced Dll's still exist.
  • The 2 namespace references involved are:
    xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions"
  • All elements referencing both i: and ie: are now failing to compile with errors similar to below:
  • "The type 'i:EventTrigger' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built."
  • "The type 'ei:FluidMoveSetTagBehavior' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built."
  • HOWEVER, I found that when I change the namespace for i: above to: "clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity", the errors for i: go away.

However I can't seem to figure out the correct syntax to change the ei="http://schemas.microsoft.com/expression/2010/interactions" reference to the Microsoft.Expression.Interactions Assembly. I don't know why it makes a difference and I may be going down the wrong path, but it's my next step. Any help on that one?

Was it helpful?

Solution

After more digging I discovered that the uninstall I mentioned for VS 2013 RC must have also uninstalled the Expression Blend SDK for .Net 4.

Oddly enough the Dll's that I had referenced were leftover from the 3.5 SDK but the namespace was for the .Net 4 SDK and had always been working. (Until that SDK was uninstalled). A clue for me was when I went to enter another namespace and the "//schemas.microsoft.com/expression/2010/interactivity" selection was no longer in the intellisense list.

I reinstalled the Blend SDK for .Net 4 and all is well again. Thanks for the attempts to help. A reminder to me to always focus on the question "what has changed" even though it may not be where you suspect...

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top