Pour la plupart, vous prenez tout ce que Visual Studio le définit par défaut ... Je fais référence à la propriété BuildAction pour chaque fichier sélectionné dans l'Explorateur de solutions. Il existe un certain nombre d'options et il est difficile de savoir ce que chacune d'elles fera.
AdditionalFiles
? Je le vois dans VS 2015 mais je n'ai pas trouvé de référence pour cela.De la documentation:
la source
Page - Prend le fichier XAML spécifié, compile en BAML et incorpore la sortie dans le flux de ressources gérées pour votre assembly (spécifiquement AssemblyName.g.resources). De plus, si vous disposez des attributs appropriés sur l'élément XAML racine dans l'élément fichier, il créera un fichier blah.g.cs, qui contiendra une classe partielle du "codebehind" pour cette page; cela implique essentiellement un appel au goop BAML pour réhydrater le fichier en mémoire et pour définir l'une des variables membres de votre classe sur les éléments maintenant créés (par exemple, si vous mettez x: Name = "foo" sur un élément , vous pourrez faire this.foo.Background = Purple; ou similaire.
ApplicationDefinition - similaire à Page, sauf qu'il continue sur furthur et définit le point d'entrée de votre application qui instanciera votre objet d'application, appellera run dessus, qui instanciera ensuite le type défini par la propriété StartupUri et donnera votre fenêtre principale .
De plus, pour être clair, cette question dans son ensemble est infinie dans son ensemble de résultats; n'importe qui peut définir des BuildActions supplémentaires simplement en créant une tâche MSBuild. Si vous regardez dans le répertoire% systemroot% \ Microsoft.net \ framework \ v {version} \ et regardez le fichier Microsoft.Common.targets, vous devriez pouvoir en déchiffrer beaucoup plus (par exemple, avec VS Pro et au-dessus, il existe une action "Shadow" qui vous permet de générer des accesseurs privés pour vous aider à tester les classes privées.
la source
VS2010 a une propriété pour 'Build Action', et aussi pour 'Copy to Output Directory'. Ainsi, une action de «Aucun» sera toujours copiée dans le répertoire de construction si la propriété de copie est définie sur «Copier si plus récent» ou «Copier toujours».
Ainsi, une action de construction de «Contenu» doit être réservée pour indiquer le contenu auquel vous accéderez via «Application.GetContentStream»
J'ai utilisé le paramètre «Build Action» de «None» et le paramètre «Copy to Output Direcotry» de «Copy if Newer» pour certains fichiers .config liés en externe.
G.
la source
Dans VS2008, l'entrée doc qui semble la plus utile est:
Windows Presentation Foundation Création d'une application WPF (WPF)
ms-help: //MS.VSCC.v90/MS.MSDNQTR.v90.fr/wpf_conceptual/html/a58696fd-bdad-4b55-9759-136dfdf8b91c.htm
ApplicationDefinition Identifie le fichier de balisage XAML qui contient la définition d'application (un fichier de balisage XAML dont l'élément racine est Application). ApplicationDefinition est obligatoire lorsque Install est vrai et OutputType est winexe. Une application WPF et, par conséquent, un projet MSBuild ne peuvent avoir qu'une seule ApplicationDefinition.
Page Identifie un fichier de balisage XAML dont le contenu est converti au format binaire et compilé dans un assembly. Les éléments de page sont généralement implémentés en conjonction avec une classe code-behind.
Les éléments de page les plus courants sont les fichiers XAML dont les éléments de niveau supérieur sont l'un des suivants:
Ressource Identifie un fichier de ressources qui est compilé dans un assembly d'application. Comme mentionné précédemment, UICulture traite les éléments de ressource.
Contenu Identifie un fichier de contenu distribué avec une application. Les métadonnées qui décrivent le fichier de contenu sont compilées dans l'application (à l'aide de AssemblyAssociatedContentFileAttribute).
la source
Que diriez-vous de cette page de Microsoft Connect (expliquant les types DesignData et DesignDataWithDesignTimeCreatableTypes). Citant:
Ce qui suit décrit les deux actions de génération pour les exemples de fichiers de données.
Les exemples de fichiers .xaml de données doivent être affectés à l'une des actions de génération ci-dessous:
DesignData : des exemples de types de données seront créés en tant que faux types. Utilisez cette action de génération lorsque les exemples de types de données ne peuvent pas être créés ou ont des propriétés en lecture seule pour lesquelles vous souhaitez définir des exemples de valeurs de données.
DesignDataWithDesignTimeCreatableTypes : des exemples de types de données seront créés à l'aide des types définis dans l'exemple de fichier de données. Utilisez cette action de génération lorsque les exemples de types de données peuvent être créés à l'aide de leur constructeur vide par défaut.
Pas si incroyablement exhaustif, mais cela donne au moins un indice. Cette procédure pas à pas MSDN donne également quelques idées. Je ne sais pas si ces actions de génération s'appliquent également aux projets non Silverlight.
la source
la source