Compartir a través de


Cómo: Crear un archivo de proyecto de ejemplo para una biblioteca de controles personalizados de Windows Presentation Foundation

Actualización: noviembre 2007

Este archivo de proyecto de ejemplo es para una biblioteca de controles personalizada de Windows Presentation Foundation (WPF), con un único control de usuario, WPFUserControl. Los detalles principales de la configuración incluyen:

  • OutputType. Se establece en library.

  • WPFUserControl.xaml. Archivo XAML declarado como elemento Page.

  • WPFUserControl.xaml.cs. Archivo de código subyacente declarado como elemento Compile.

Puede reutilizar o modificar este archivo de proyecto para adaptarlo a sus necesidades, siempre que los archivos a los que hace referencia se encuentren en la ubicación desde la que hace referencia a ellos. Alternativamente, puede hacer que se genere automáticamente un archivo de proyecto para un control personalizado mediante la plantilla de proyecto Biblioteca de controles personalizados (WPF) en Microsoft Visual Studio 2005.

Este archivo de proyecto es para un proyecto de C# y, por tanto, incluye el elemento Import de Microsoft.CSharp.targets. Microsoft Visual Studio 2005 asigna a los archivos de proyecto de C# una extensión .csproj. Un proyecto de Microsoft Visual Basic .NET creado en Microsoft Visual Studio 2005 tendría normalmente la extensión .vbproj e incluiría el elemento Import de Microsoft.VisualBasic.targets.

Ejemplo

<Project DefaultTargets="Build" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">

<PropertyGroup>

<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>

<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

<RootNamespace>WPFCustomControlLibrary</RootNamespace>

<AssemblyName>WPFCustomControlLibrary</AssemblyName>

<WarningLevel>4</WarningLevel>

<OutputType>library</OutputType>

<ApplicationVersion>1.0.0.*</ApplicationVersion>

</PropertyGroup>

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">

<DebugSymbols>true</DebugSymbols>

<DebugType>full</DebugType>

<Optimize>false</Optimize>

<OutputPath>.\bin\Debug\</OutputPath>

<DefineConstants>DEBUG;TRACE</DefineConstants>

</PropertyGroup>

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">

<DebugSymbols>false</DebugSymbols>

<Optimize>true</Optimize>

<OutputPath>.\bin\Release\</OutputPath>

<DefineConstants>TRACE</DefineConstants>

</PropertyGroup>

<ItemGroup>

<Reference Include="System" />

<Reference Include="WindowsBase" />

<Reference Include="PresentationCore" />

<Reference Include="PresentationFramework" />

</ItemGroup>

<ItemGroup>

<Page Include="WPFUserControl.xaml" />

<Compile Include="WPFUserControl.xaml.cs" />

</ItemGroup>

<ItemGroup>

<Compile Include="Properties\AssemblyInfo.cs" />

<AppDesigner Include="Properties\" />

</ItemGroup>

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

<Import Project="$(MSBuildBinPath)\Microsoft.WinFX.targets" />

</Project>