Иван Андреевич Трещев

Программирование для мобильных платформ. Android и WP. Учебный курс


Скачать книгу

найдите элемент Grid с именем ContentPanel, который должен быть пустым, и вставьте в него следующую разметку XAML.

      <Grid x: Name=«LayoutRoot» Background=«Transparent»>

      …

      <! – ContentPanel – place additional content here – >

      <Grid x: Name=«ContentPanel» Grid.Row=«1» Margin=«12,0,12,0»>

      <Grid.ColumnDefinitions>

      <ColumnDefinition Width=«*» />

      <ColumnDefinition Width=«Auto»/>

      </Grid.ColumnDefinitions>

      <TextBox Grid.Column=«0» Name=«MessageTextBox»

      FontSize=» {StaticResource PhoneFontSizeExtraLarge}»

      Margin=«20,20,10,20»/>

      <Button Grid.Column=«1»

      Name=«ClickMeButton»

      Content=«Click Me»

      HorizontalAlignment=«Right»

      Padding=«4»

      Margin=«10,20,20,20» />

      </Grid>

      </Grid>

      …

      (описание текстового поля можно было также получить, просто перетащив мышкой заготовку текстового поля из панели TOOLS на изображение эмулятора телефона).

      Элемент Grid упорядочивает свои дочерние элементы управления на странице на основе ширины каждого столбца, как указано в коллекции ColumnDefinitions. Обратите внимание, что ширина первого столбца указывается как *. Это позволяет столбцу растягиваться и заполнять неиспользуемое пространство в строке после размещения всех остальных столбцов. Ширина второго столбца указывается как Auto, что позволяет изменять размер столбца в соответствии с размером его содержимого.

      Чтобы завершить конструирование страницы, добавьте третью строку, которая будет содержать баннер с сообщением, вводимым пользователем. Для создания этой строки вставьте следующую разметку XAML сразу перед конечным тегом внешней сетки.

      …

      <Grid x: Name=«LayoutRoot» Background=«Transparent»>

      …

      <Grid Grid.Row=«2»>

      <TextBlock Name=«BannerTextBlock»

      Style=» {StaticResource PhoneTextExtraLargeStyle}»

      Foreground=«#FFFF9A00»

      HorizontalAlignment=«Stretch»

      TextWrapping=«Wrap»

      TextAlignment=«Center»

      FontWeight=«Bold» />

      </Grid>

      </Grid>

      …

      Щелкните вкладку Design с правого края окна, чтобы перейти в режим конструирования.

      2.11.6 Обработка событий

      Теперь необходимо определить обработчики событий, которые отвечают на действия из интерфейса пользователя, в частности событие нажатия кнопки. Включите в конструкторе режим Design. Для этого дважды щелкните вкладку Design с правого края окна конструктора. Щелкните кнопку Click Me на поверхности конструктора, чтобы выбрать ее, а затем нажмите клавишу F4, чтобы открыть окно свойств этой кнопки. На панели Properties щелкните вкладку Events, чтобы отобразить окно со списком доступных событий. Найдите в этом списке событие Click и введите ClickMeButton_Click в текстовом поле рядом с этим событием. Нажмите клавишу Enter, чтобы создать обработчик событий с этим именем, и откройте файл с выделенным кодом для отображения заглушки метода, созданной Visual Studio (рис.).

      Рисунок 2.12 Задание обработчика события Click

      Существует альтернативный механизм создания обработчика событий. В Visual Studio можно дважды щелкнуть элемент управления в конструкторе, чтобы создать обработчик для его события по умолчанию: для элементов управления в виде кнопок это событие Click.

      Реализация метода (который пока является пустым) находится в файле MainPage. xaml. cs. Вставьте следующий код в тело метода ClickMeButton_Click.

      private void ClickMeButton_Click (object sender, RoutedEventArgs e)

      {

      BannerTextBlock.