代码之家  ›  专栏  ›  技术社区  ›  Vin

在Visual Studio中编译具有自定义扩展名(例如.custx)的页面,就像它们是.xaml文件一样

  •  1
  • Vin  · 技术社区  · 17 年前

    在VS包(Visual Studio可扩展性)中,我在XamlLanguageService中注册了一个自定义扩展名(例如“.custx”),这样在Visual Studio中,当用户打开.custx时,它会像.Xaml文件一样在Xaml设计器/编辑器中打开。

    但是,当我将其编译为“页面”(BuildAction)时,WINFX目标/编译器出错,并显示以下错误消息。

    MySample\Page1.custx:错误:标记文件无效。指定扩展名为.xaml的源标记文件。

    我正在寻找一种解决方案,以便.custx页面编译为页面,就像WPF应用程序中的.xaml页面一样

    非常感谢任何帮助

    2 回复  |  直到 17 年前
        1
  •  1
  •   Aaron Marten    17 年前

    我建议简单地重用XAML文件扩展名(在目标中无法绕过此检查)。你需要自己的文件扩展名是有原因的吗?

        2
  •  0
  •   Blake Niemyjski    16 年前

    解决这个问题很容易。基本上,我打赌你正在使用一个自定义构建操作,并用这样的整数设置它:

    属性属性=projectItem。属性。项目(“建设行动”); 财产。值=4;//保留0-3,自定义操作将为4或更大。

    这些整数值会根据机器和项目类型而变化。..因此,此错误可能是由于ItemType设置为ApplicationDefinition造成的。

    要解决此问题,您需要将ItemType设置为自定义操作,如下所示:

    项目项。属性。项目(“ItemType”)。值=“MyCustomActionName”。

    谢谢

    -布莱克·尼米伊斯基