Практическое руководство. Создание примера файла проекта приложения обозревателя XAML Windows Presentation Foundation
Обновлен: Ноябрь 2007
Этот пример файла проекта предназначен для XBAP (XAML browser application — приложение обозревателя XAML) с файлом определения приложения App, настроенного для автоматического открытия HomePage, которая определена в XAML и в коде программной части. Основные данные конфигурации включают следующее:
OutputType. Должен быть установлен в значение winexe.
HostInBrowser. Должно быть задано значение true, поскольку XBAP (XAML browser applications — приложения обозревателя XAML) должны быть приложениями, размещенными в обозревателе.
Install. Должно быть задано значение false, поскольку XBAP (XAML browser applications — приложения обозревателя XAML) не установлены.
TargetZone. Должно быть задано значение «Internet», поскольку XBAP (XAML browser applications — приложения обозревателя XAML) выполняются в зоне безопасности «Интернет».
StartAction. Должно быть задано «Program».
StartProgram. Должно устанавливаться у программы, которая обрабатывает процесс размещения приложения в обозревателе.
StartArguments. Должно быть установлено в значение пути к манифесту приложения с расширением XBAP.
App.xaml. Файл определения приложения, настраиваемый как элемент ApplicationDefinition.
HomePage.xaml. Файл XAML, объявленный как элемент Page.
HomePage.xaml.cs. Файл кода программной части, объявленный как элемент Compile.
XBAPApplication_TemporaryKey.pfx. Временный файл ключа манифеста, необходимый для приложений, развернутых с помощью ClickOnce, включая приложения XBAP.
Можно повторно использовать или изменить этот файл проекта в соответствии с конкретными потребностями, пока ссылочные файлы находятся в папке, из которой к ним обращаются. Кроме того, можно использовать файл проекта для XBAP, автоматически создаваемый с помощью шаблона проекта Приложение обозревателя XAML (WPF) в среде Microsoft Visual Studio 2005.
Этот файл проекта предназначен для проекта C# и, следовательно, включает элемент Microsoft.CSharp.targets Import. Microsoft Visual Studio 2005 присваивает файлам проекта C# расширение CSPROJ. Проект Microsoft Visual Basic .NET, созданный в Microsoft Visual Studio 2005, обычно имеет расширение VBPROJ и содержит элемент Microsoft.VisualBasic.targets Import.
Пример
<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>