Respuesta
No es un plug-in reflector que carga ensamblajes que contienen recursos BAML (por ejemplo, asambleas de recursos localizados) y muestra el XAML correspondiente: BamlViewer
Al compilar una aplicación de WPF en Visual Studio, todos sus archivos XAML se convierten en BAML, y ese BAML luego se incorpora como un recurso en el ensamblado final DLL o EXE.
Puede compilar el XAML creando un archivo de proyecto MSBuild que lo haga referencia. Esto es lo que sucede en Visual Studio "under the covers" cuando haces una compilación en tu proyecto (crea un archivo .proj temporal y lo construye).
Un archivo de proyecto bastante mínima (xamlcompile.csproj) es algo como esto:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProductVersion>9.0.30729</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<OutputType>library</OutputType>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<ProjectGuid>{6B8967FF-37B7-43E8-B866-FFD6F13FFC0A}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="PresentationFramework.Classic" />
</ItemGroup>
<ItemGroup>
<Page Include="Themes\Generic.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
Y a continuación, puede generar el archivo BAML mediante la ejecución del comando:
MSBuild /t:ResolveReferences;MarkupCompilePass1;MarkupCompilePass2 xamlcompile.csproj
Esto creará una archivo baml en obj \ Debug, en el ejemplo anterior será obj \ Debug \ Themes \ Generic.baml.
Espero que ayude.
- 1. Por qué XAML está compilado en BAML y no en C#
- 2. Descompilador/Visualizador BAML
- 3. ¿Qué es un archivo .baml?
- 4. Reemplazar etiqueta en xaml VS2010 editor xaml
- 5. Compila lua incrustado en C
- 6. Usar System.Type en XAML
- 7. Assembly Alias en XAML
- 8. Acceso DisplayName en xaml
- 9. Conjunto DataContext en XAML
- 10. Qué significa * en XAML
- 11. Disparadores en XAML
- 12. genéricos en XAML
- 13. Constantes en XAML
- 14. x: significado en XAML
- 15. Dividir un XAML grande en cantidad de archivos Sub-XAML
- 16. ¿Por qué compila esto?
- 17. ¿Windows 8 compila JavaScript?
- 18. ¿Cuándo compila Rails CoffeeScript?
- 19. self.delegate respondsToSelector: ... no compila
- 20. de Hamcrest no compila
- 21. ¿Por qué compila?
- 22. Sangría - XAML
- 23. ¿Cómo compila CoffeeScript en un Jakefile?
- 24. compila errores usando signal.h en Linux
- 25. ¿Compila vistas en tiempo de compilación VS2010?
- 26. ¿Por qué compila esto en Ideone?
- 27. ¿Compila/ejecuta el ensamblador en Linux?
- 28. ¿Crear un diccionario en xaml?
- 29. TabItem en un XAML separada
- 30. paréntesis en la sintaxis XAML
en realidad, quiero lo opuesto ... –
Mire en el directorio obj \ Debug de su proyecto Hans. Visual Studio genera archivos BAML y los coloca allí antes de incrustarlos en la DLL o EXE final. –
Estaba buscando desesperadamente esto .. – viky