Compilar páginas con extensión personalizada (por ejemplo .custx) como si fueran archivos .xaml en Visual Studio

StackOverflow https://stackoverflow.com/questions/494205

Pregunta

En un paquete VS (Visual Studio Extensibility), tengo una extensión personalizada registrada (por ejemplo " .custx ") con XamlLanguageService, de modo que en Visual Studio cuando el usuario abre .custx, se abre en Xaml Designer / editor como un archivo .xaml.

Sin embargo, cuando lo compilo como " Página " (BuildAction), los objetivos de WINFX / errores del compilador aparecen con el siguiente mensaje de error.

MySample \ Page1.custx: error: el archivo de marcado no es válido. Especifique un archivo de marcado de origen con una extensión .xaml.

Estoy buscando una solución, para que las páginas .custx se compilen como página, al igual que las páginas .xaml en una aplicación WPF

Cualquier ayuda es muy apreciada

¿Fue útil?

Solución

Sugeriría simplemente reutilizar la extensión de archivo XAML (no hay forma de evitar esta verificación en los destinos). ¿Hay alguna razón por la que necesita su propia extensión de archivo?

Otros consejos

La solución para este problema es bastante fácil. Básicamente, apuesto a que está utilizando una acción de compilación personalizada y la configura con un número entero como este:

Propiedad de propiedad = projectItem.Properties.Item (" BuildAction "); propiedad. Valor = 4; // 0-3 están reservados, las acciones personalizadas serán 4 o mayores.

Estos valores enteros cambian por máquina y por tipo de proyecto ... Por lo tanto, este error puede ser causado por el ItemType establecido en ApplicationDefinition.

Para solucionar este problema, debe configurar el ItemType para su acción personalizada de esta manera:

projectItem.Properties.Item (" ItemType "). Value = " MyCustomActionName " ;.

Gracias

-Blake Niemyjski

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top