How to: Create a Sample Project File for a Windows Presentation Foundation Standalone Navigation Application
This example project file is for a Windows Presentation Foundation (WPF) standalone navigation application, with an application definition, App, that is configured to automatically open a page, HomePage, which is defined with Extensible Application Markup Language (XAML) and code-behind. HomePage will be opened in a NavigationWindow. Key configuration details include:
OutputType
. Set towinexe
.App.xaml. The application definition file being configured as an
ApplicationDefinition
element.HomePage.xaml. A XAML file that is declared as a
Page
element.HomePage.xaml.cs. A code-behind file that is declared as a
Compile
element.
You can reuse or modify this project file to suit your needs, as long as the files you reference are in the location you're referencing them from. Alternatively, you can have a project file for a standalone navigation application automatically generated for you by using the Windows Application (WPF) project template in Microsoft Visual Studio 2005, and replacing the default Window with a Page.
This project file is for a C# project and consequently includes the Microsoft.CSharp.targets Import
element. Microsoft Visual Studio 2005 gives C# project files a .csproj extension. A Microsoft Visual Basic .NET created in Microsoft Visual Studio 2005 would typically have the .vbproj extension, and would include the Microsoft.VisualBasic.targets Import
element.
Example
<Project DefaultTargets="Build" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<RootNamespace>WPFStandaloneNavigationApplication</RootNamespace>
<AssemblyName>WPFStandaloneNavigationApplication</AssemblyName>
<WarningLevel>4</WarningLevel>
<OutputType>winexe</OutputType>
<ApplicationVersion>1.0.0.*</ApplicationVersion>
<BootstrapperEnabled>false</BootstrapperEnabled>
</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>
<ApplicationDefinition Include="App.xaml" />
<Page Include="HomePage.xaml" />
<Compile Include="HomePage.xaml.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildBinPath)\Microsoft.WinFX.targets" />
</Project>