Gewusst wie: Erstellen einer Beispielprojektdatei für eine nur aus Code bestehende Standalone-Anwendung in Windows Presentation Foundation
Aktualisiert: November 2007
Diese Beispielprojektdatei ist für eine Standalone-Anwendung in Windows Presentation Foundation (WPF) und besteht lediglich aus Code, d. h. ohne Extensible Application Markup Language (XAML). Zu den wichtigsten Konfigurationsdetails gehören:
OutputType. Auf winexe festgelegt.
Alle C#.cs-Codedateien. Automatische Kompilierung mithilfe eines Compile-Elements, dessen Include-Attribut auf *.cs festgelegt ist.
Sie können diese Projektdatei entsprechend Ihren Anforderungen erneut verwenden oder ändern, solange der Speicherort der referenzierten Dateien identisch mit dem ist, aus dem Sie auf die Dateien verweisen. Alternativ dazu können Sie eine Projektdatei für eine Standalone-Anwendung automatisch generieren, indem Sie die Windows-Anwendung (WPF)-Projektvorlage in Microsoft Visual Studio 2005 verwenden. Darüber hinaus müssen Sie den generierten Standardcode und folgende XAML-Dateien entfernen: App.xaml, App.xaml.cs, Window1.xaml und Window1.xaml.cs.
Diese Projektdatei ist für ein C#-Projekt und enthält demzufolge das Microsoft.CSharp.targets Import-Element. Microsoft Visual Studio 2005 versieht C#-Projektdateien mit der Erweiterung .csproj. Eine in Microsoft Visual Studio 2005 erstellte Microsoft Visual Basic .NET-Projektdatei hätte i. d. R. die Erweiterung .vbproj und würde das Microsoft.VisualBasic.targetsImport-Element enthalten.
Beispiel
<Project DefaultTargets="Build" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<RootNamespace>WPFStandaloneApplicationCodeOnly</RootNamespace>
<AssemblyName>WPFStandaloneApplicationCodeOnly</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>
<Compile Include="*.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildBinPath)\Microsoft.WinFX.targets" />
</Project>