[#VS2013] AddIn: Agrupando archivos (File Nesting que se dice por ahi …)

Hola!

Visual Studio hace un excelente trabajo agrupando archivos relacionados en los proyectos más comunes. Un proyecto WFP de C# agrupa los archivos XAML y XAML.CS de manera para en el panel Solution Explorer solo ves un elemento agrupado.

Lo que en el Solutión Explorer se ve de esta forma, en el File Sistem en realidad son varios archivos.

image

Esta agrupación de archivos (file nesting) está definida dentro del archivo de proyecto, y hasta aquí todos contentos. El siguiente texto es parte del archivo de proyecto y el elemento MainWindow.xaml.cs (línea 14) tiene una relación de dependencia con MainWindow.xaml (línea 15)

   1: <ItemGroup>

   2:   <ApplicationDefinition Include="App.xaml">

   3:     <Generator>MSBuild:Compile</Generator>

   4:     <SubType>Designer</SubType>

   5:   </ApplicationDefinition>

   6:   <Compile Include="App.xaml.cs">

   7:     <DependentUpon>App.xaml</DependentUpon>

   8:     <SubType>Code</SubType>

   9:   </Compile>

  10:   <Page Include="MainWindow.xaml">

  11:     <Generator>MSBuild:Compile</Generator>

  12:     <SubType>Designer</SubType>

  13:   </Page>

  14:   <Compile Include="MainWindow.xaml.cs">

  15:     <DependentUpon>MainWindow.xaml</DependentUpon>

  16:     <SubType>Code</SubType>

  17:   </Compile>

  18: </ItemGroup>

Si alguna vez “pierdes esta asociación” la siguiente extensión es bastante útil. Esto es común en los tipos de proyecto no tan comunes, como el LS, o si haces pruebas con IronPython. La siguiente imagen vale más que mil palabras, no?

image

Volviendo al ejemplo anterior, en el mismo ahora puedo hacer cosas tan útiles como poner MainWindow.xaml como dependencia de App.Config Winking smile

image

Descarga: http://visualstudiogallery.msdn.microsoft.com/3ebde8fb-26d8-4374-a0eb-1e4e2665070c

Saludos @ Home

El Bruno

image image image Google

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.