Compilazione di pagine con estensione personalizzata (ad esempio .custx) come se fossero file .xaml in Visual Studio

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

Domanda

In un pacchetto VS (estensibilità di Visual Studio), ho un'estensione personalizzata registrata (per ex " .custx ") con XamlLanguageService, in modo che in Visual Studio quando l'utente apre .custx, si apre in Xaml Designer / editor proprio come un file .xaml.

Comunque quando lo compilo come " Pagina " (BuildAction), gli obiettivi WINFX / errori del compilatore vengono visualizzati con il seguente messaggio di errore.

MySample \ Page1.custx: errore: il file di markup non è valido. Specifica un file di markup di origine con estensione .xaml.

Sto cercando una soluzione, in modo che le pagine .custx vengano compilate come pagina, proprio come le pagine .xaml in un'applicazione WPF

Qualsiasi aiuto è molto apprezzato

È stato utile?

Soluzione

Suggerirei semplicemente di riutilizzare l'estensione del file XAML (non c'è modo di aggirare questo controllo nelle destinazioni). C'è un motivo per cui hai bisogno della tua estensione di file?

Altri suggerimenti

La correzione di questo problema è piuttosto semplice. Fondamentalmente sto scommettendo che stai usando un'azione di costruzione personalizzata e la stai impostando con un numero intero come questo:

Proprietà property = projectItem.Properties.Item (" BuildAction "); property.Value = 4; // 0-3 sono riservati, le azioni personalizzate saranno 4 o superiori.

Questi valori interi cambiano per macchina e per tipo di progetto ... Quindi questo errore può essere causato dal ItemType impostato su ApplicationDefinition.

Per risolvere questo problema devi impostare ItemType sulla tua azione personalizzata in questo modo:

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

Grazie

-Blake Niemyjski

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top