Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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




Будем мы использовать механизм команд 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) { } }}
  • Запустите приложение и убедитесь, что ошибок компиляции нет, но функциональности от выполненной нами работы в нем пока не прибавилось

Данная страница нарушает авторские права?





© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.