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

Будем мы использовать механизм команд WPF или нет, но без событий и их обработчиков никак не обойтись. Начнем с того факта, что для решения наших задач можно создать обработчики с одинаковой сигнатурой, определяемой делегатом пространства имен System.Windows:

public delegate void RoutedEventHandler(object sender, RoutedEventArgs e)

Имена обработчикам будем присваивать в соответствии с решаемой ими задачей. Обработчики создадим вручную и их необязательно сразу присоединять к событиям источников, поскольку неприсоединенные обработчики будут считаться обычными методами класса. Наиболее полно все задачи представлены в главном меню приложения, поэтому для каждой из них нужно создать свою группу обработчиков. Выполним все это по порядку, размещая группы обработчиков в соответствующих частях класса Window1.

  • Добавьте в часть класса Window1, расположенную в файле File.cs, следующие пустые обработчики по количеству задач меню в разделе File
using System;using System.Collections.Generic;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes; namespace Notepad1{ partial class Window1 { //------------------------------------------------------ // // Обработчики источников задач File // //------------------------------------------------------ private void NewOnExecute(object sender, RoutedEventArgs e) { } private void OpenOnExecute(object sender, RoutedEventArgs e) { } private void SaveOnExecute(object sender, RoutedEventArgs e) { } private void SaveAsOnExecute(object sender, RoutedEventArgs e) { } private void PageSetupOnExecute(object sender, RoutedEventArgs e) { } private void PrintPreviewOnExecute(object sender, RoutedEventArgs e) { } private void PrintOnExecute(object sender, RoutedEventArgs e) { } private void ExitOnExecute(object sender, RoutedEventArgs e) { } }}
  • Добавьте в часть класса Window1, расположенную в файле Edit.cs, следующие пустые обработчики по количеству задач меню в разделе Edit
using System;using System.Collections.Generic;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes; namespace Notepad1{ partial class Window1 { //------------------------------------------------------ // // Обработчики источников задач Edit // //------------------------------------------------------ private void UndoOnExecute(object sender, RoutedEventArgs e) { } private void RedoOnExecute(object sender, RoutedEventArgs e) { } private void CutOnExecute(object sender, RoutedEventArgs e) { } private void CopyOnExecute(object sender, RoutedEventArgs e) { } private void PasteOnExecute(object sender, RoutedEventArgs e) { } private void DeleteOnExecute(object sender, RoutedEventArgs e) { } private void FindOnExecute(object sender, RoutedEventArgs e) { } private void FindNextOnExecute(object sender, RoutedEventArgs e) { } private void ReplaceOnExecute(object sender, RoutedEventArgs e) { } private void GoToOnExecute(object sender, RoutedEventArgs e) { } private void SelectAllOnExecute(object sender, RoutedEventArgs e) { } }}
  • Добавьте в часть класса Window1, расположенную в файле Other.cs, следующие пустые обработчики по количеству задач меню в оставшихся разделах
using System;using System.Collections.Generic;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes; namespace Notepad1{ partial class Window1 { //------------------------------------------------------ // // Прочие обработчики // //------------------------------------------------------ private void FontOnExecute(object sender, RoutedEventArgs e) { } private void WordWrapOnExecute(object sender, RoutedEventArgs e) { } private void AboutOnExecute(object sender, RoutedEventArgs e) { } }}
  • Запустите приложение и убедитесь, что ошибок компиляции нет, но функциональности от выполненной нами работы в нем пока не прибавилось







Дата добавления: 2015-04-15; просмотров: 724;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.