Comment : créer un exemple de fichier projet pour une application de navigateur XAML Windows Presentation Foundation

Mise à jour : novembre 2007

Ce fichier projet d'exemple concerne une application du navigateur XAML (XBAP), avec un fichier de définition d'application, App, configuré pour ouvrir automatiquement une page d'accueil, HomePage, définie en XAML et du code-behind. Les principaux détails de la configuration incluent :

  • OutputType. Avec la valeur winexe.

  • HostInBrowser. Doit avoir la valeur true car l'applications du navigateur XAML (XBAP) doit être hébergée par un navigateur.

  • Install. Doit avoir la valeur false car les applications du navigateur XAML (XBAP) ne sont pas installées.

  • TargetZone. Doit avoir la valeur "Internet", car les applications du navigateur XAML (XBAP) s'exécutent dans la zone de sécurité d'Internet.

  • StartAction. Doit avoir la valeur "Programme".

  • StartProgram. Doit correspondre au programme qui gère le processus d'hébergement de l'application dans le navigateur.

  • StartArguments. Doit correspondre au chemin d'accès du manifeste des applications, qui possède une extension .xbap.

  • App.xaml. Fichier de définition d'application qui est configuré comme un élément ApplicationDefinition.

  • HomePage.xaml. Fichier XAML déclaré comme un élément Page.

  • HomePage.xaml.cs. Fichier code-behind déclaré comme un élément Compile.

  • XBAPApplication_TemporaryKey.pfx. Fichier de clé de manifeste temporaire requis par les applications déployées à l'aide de ClickOnce, dont XBAP.

Vous pouvez réutiliser ou modifier ce fichier projet pour l'adapter à vos besoins, sous réserve que les fichiers que vous référencez se trouvent à l'emplacement de référence. Vous pouvez également avoir un fichier projet pour une XBAP générée automatiquement pour vous à l'aide du modèle de projet application du navigateur XAML (WPF) dans Microsoft Visual Studio 2005.

Ce fichier projet concerne un projet C# et inclut par conséquent l'élément Import de Microsoft.CSharp.targets. Microsoft Visual Studio 2005 attribue l'extension .csproj aux fichiers projet C#. Un projet Microsoft Visual Basic .NET créé dans Microsoft Visual Studio 2005 doit en principe avoir l'extension .vbproj et inclure l'élément Import de Microsoft.VisualBasic.targets.

Exemple

<Project DefaultTargets="Build" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <RootNamespace>XBAPApplication</RootNamespace>
    <AssemblyName>XBAPApplication</AssemblyName>
    <WarningLevel>4</WarningLevel>
    <OutputType>winexe</OutputType>
    <EnableSecurityDebugging>false</EnableSecurityDebugging>
    <ApplicationVersion>1.0.0.*</ApplicationVersion>
    <MapFileExtensions>False</MapFileExtensions>
    <HostInBrowser>True</HostInBrowser>
    <Install>False</Install>
    <TargetZone>Internet</TargetZone>
    <StartAction>Program</StartAction>
    <StartProgram>$(WINDIR)\System32\PresentationHost.exe</StartProgram>
    <ApplicationExtension>.xbap</ApplicationExtension>
    <StartArguments>-debug "$(MSBuildProjectDirectory)\bin\$(Configuration)\$(AssemblyName)$(ApplicationExtension)"</StartArguments>
    <SignManifests>True</SignManifests>
    <BootstrapperEnabled>false</BootstrapperEnabled>
    <ManifestKeyFile>XBAPApplication_TemporaryKey.pfx</ManifestKeyFile>
    <ManifestCertificateThumbprint>F2E49D0E8A6FE749DE85D224F5557B875DFD5577</ManifestCertificateThumbprint>
  </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>
    <None Include="XBAPApplication_TemporaryKey.pfx" />
  </ItemGroup>
  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
  <Import Project="$(MSBuildBinPath)\Microsoft.WinFX.targets" />
</Project>