gpt4 book ai didi

visual-studio-2010 - VS2010 自定义标记扩展

转载 作者:行者123 更新时间:2023-12-03 10:30:13 24 4
gpt4 key购买 nike

我们刚刚从vs2008切换到vs2010,我们的项目编译运行良好,没有任何问题。但是,xaml 设计器有一些错误。这是错误之一,希望有人可以提供解决方案。

我们有一个自定义的 MarkupExtension,我们在 xaml 中使用它来获取某些资源。像这样的东西:
<Button Style="{l:GetResource Key=MyButtonStyle}" />
我知道我们可以使用 StaticResource 或 DynamicResource。但是,我们有理由使用自定义标记扩展。

设计师的错误信息是:

'GetResourceExtension' is not valid for Setter.Value. The only supported MarkupExtension types are DynamicResourceExtension and BindingBase or derived types.



我的问题是代码在vs2008中运行良好,在2010中也运行良好,如何让2010设计器工作?

最佳答案

我编写了一些标记扩展,尽管代码运行我得到 Xaml 错误,就像你一直得到的那样。假设您有有效的代码,我发现摆脱错误的唯一方法是通过重建选项,然后运行应用程序。

当然,问题是如果您再次更改或移动它,错误似乎又回来了。我的假设是静态编译无法完全解决您的标记正在做什么,并且基于此引发错误。

在我的情况下,我正在编写一个方法绑定(bind)器,并且由于该对象在运行时之前为空,我最终不得不使用 new Object();并在运行时将其换出。这很 hacky,但编译错误让我发疯了。

xaml 解析器在 2012 年似乎更好,但即便如此,仍然存在奇怪的错误。

关于visual-studio-2010 - VS2010 自定义标记扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2733257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com