我的应用程序运行和工作绝对正常。现在我想使用VS2012设计器来设计我的MainWindow
,它是从不同的库派生的HandledWindow
类型。
下面是我的MainWindow
的XAML代码:
<UI:HandledWindow x:Class="Diamond.Executor.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:UI="clr-namespace:Diamond.Core.UI;assembly=Diamond.Core"
Title="MainWindow"
Height="250"
Width="500"
Style="{DynamicResource WindowStandard}"
WindowStartupLocation="CenterScreen"
Loaded="Initialise">
字符串
下面是基本类型HandledWindow
:
namespace Diamond.Core.UI
{
public class HandledWindow : Window
{
型
这是怎么了?当我运行我的应用程序时,任何东西都可以工作,绑定,样式和它的模板。但突然设计师说“不'UI'不Map到命名空间 *"。我只是不明白。它停止了我的开发真的没有理由。也许是VS2012错误,但我想确保我做的一切都是正确的,如果有一种方法可以通过该错误并继续使用设计师?
2条答案
按热度按时间zaq34kh61#
我已经发现了什么只是导致这个问题,但我不知道为什么,因为通过语法它是好的,逻辑上它的工作.但XAML的desginer无法正常工作与这样的数据绑定表达式:
字符串
(It的
UI
命名空间中的样式的一部分,由于这个表达式,XAML在整个命名空间中拒绝了这个样式)然后我将其更改为这个表达式:型
但是现在XAML设计器再次工作,不再因为一个数据绑定表达式而忽略整个命名空间
UI
。不管怎样,问题终于解决了。
u7up0aaq2#
只是想补充一下,我经历了同样的问题,但以不同的方式:我在运行时遇到了这个异常,但这是在我向项目中添加了一个引用了另一个项目中的名称空间的命名空间之后发生的在这样做之后,实际的错误本身发生在从项目本身绑定到命名空间中的某个东西时,(XAML文件所属的程序集),而不是引用程序集的命名空间。真的,真的很奇怪。这是在VS2012上。
在绑定中添加Path=的解决方案在这种情况下也能很好地工作。
我不知道XAML设计器是否也会遇到这个问题,因为XAML设计器不再为这个项目加载,因为它抛出了一个不相关的错误:参数'frameworkName'不能是空字符串。