Статьи

Приложение для Windows Phone 7 Hello World

В этом уроке я собираюсь создать очень простое приложение для Windows Phone 7 «Hello World» (см. Изображение ниже). Надеюсь, после этого урока вы будете достаточно опытны, чтобы разработать собственное приложение.


Для этого урока вам понадобится Visual Studio 2010 с установленными средствами разработки для Windows Phone (включая эмулятор). Вы можете загрузить эти инструменты отсюда (или просто выполнить поиск «Инструменты разработчика Windows Phone»).

После того, как вы успешно установили WP7 Developer Tools, пришло время впервые открыть Visual Studio 2010 и создать новый проект.

Создание нового проекта

Прежде всего вам нужно создать новый проект. Для этого откройте Visual Studio 2010 -> Файл -> Новый проект -> выберите Приложение Windows Phone в диалоговом окне, как показано на рисунке ниже. Другие шаблоны проектов я расскажу позже.

Каковы ключевые файлы во вновь созданном решении?
Файл манифеста — содержит метаданные приложения. Вы можете найти больше информации об этом здесь .
App.xaml — содержит все общие ресурсы и свойства приложения Windows Phone 7. Он также содержит события модели выполнения .
MainPage.xaml — эта страница Windows Phone запускается по умолчанию. Вы можете изменить страницу по умолчанию, изменив атрибут NavigationPage элемента DefaultTask в файле манифеста.

Модификация XAML

Далее вам нужно будет изменить MainPage XAML. По сути, вы можете добавлять новые элементы пользовательского интерфейса в XAML, используя перетаскивание из Toolbox или добавляя их в разметку XAML вручную. Что касается меня, я нахожу второй способ более подходящим для разработки (конечно, также можно добавлять элементы программно, используя код на C #). После добавления текстового блока и кнопки (на этот раз я использовал перетаскивание) мой XAML MainPage выглядел так:

<phone:PhoneApplicationPage
    x:Class="Lesson1_HelloWorld.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    FontFamily="{StaticResource PhoneFontFamilyNormal}"
    FontSize="{StaticResource PhoneFontSizeNormal}"
    Foreground="{StaticResource PhoneForegroundBrush}"
    SupportedOrientations="Portrait" Orientation="Portrait"
    mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
    shell:SystemTray.IsVisible="True">
 
    <!--LayoutRoot contains the root grid where all other page content is placed-->
    <Grid x:Name="LayoutRoot" Background="Transparent">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
 
        <!--TitlePanel contains the name of the application and page title-->
        <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="24,24,0,12">
            <TextBlock x:Name="ApplicationTitle" Text="EUGENEDOTNET.COM" Style="{StaticResource PhoneTextNormalStyle}"/>
            <TextBlock x:Name="PageTitle" Text="my first app" Margin="-3,-8,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
        </StackPanel>
 
        <!--ContentPanel - place additional content here-->
        <Grid x:Name="LayoutRoot" Grid.Row="1">
            <TextBlock Height="36" HorizontalAlignment="Left" Margin="113,106,0,0" Name="textBlock1" Text="MyText" VerticalAlignment="Top" Width="156" />
            <Button Content="Say Hello!" Height="70" HorizontalAlignment="Left" Margin="113,180,0,0" Name="button1" VerticalAlignment="Top" Width="179" Click="button1_Click" />
        </Grid>
    </Grid>
</phone:PhoneApplicationPage>

 

Обработка событий в коде

Как некоторые из вас, вероятно, заметили, я добавил событие click для своего элемента управления кнопками. Теперь мне нужно добавить обработчик событий для этого в коде (MainPage.xaml.cs). Нажатие кнопки на главной странице заполнит текстовый блок «Hello World!» строка. Проверьте код ниже:

public partial class MainPage : PhoneApplicationPage
{
    // Constructor
    public MainPage()
    {
        InitializeComponent();
    }
 
    private void button1_Click(object sender, RoutedEventArgs e)
    {
        textBlock1.Text = "Hello World!";
    }
}

Запуск приложения

Вот и все. Наше первое приложение для Windows Phone 7 готово. Просто нажмите F5, чтобы запустить приложение в режиме отладки. Убедитесь, что в качестве цели для проектов Silverlight для Windows Phone выбран «Эмулятор Windows Phone 7».

PS
Моя предыдущая трансляция «Привет, мир» (весна, 2010). Я до сих пор храню эту память о себе живой