ВНИМАНИЕ
Если вы пользуетесь эмулятором, то для имитации tap-and-hold нужно щелкнуть левой кнопки мыши и не отпускать ее некоторое время.
Чтобы добавить элемент ContextMenu
в приложение, нужно сначала переместить его значок на форму. Он появится в нижней части редактора Form Designer
, там же, где и элемент MainMenu
. Но на самом деле во время выполнения программы контекстное меню будет отображаться рядом с выбранным элементом интерфейса. Также контекстное меню можно создавать программно во время запуска приложения.
При вызове контекстного меню инициируется событие Popup
. Когда пользователь выбирает какой-то пункт меню, то возникает событие Click
. Чтобы привязать созданное контекстное меню к конкретному элементу интерфейса, нужно выбрать его на форме и в свойстве ContextMenu
указать созданное контекстное меню.
ПРИМЕЧАНИЕ
До выхода .NET Compact Framework 2.0 элемент управления ContextMenu не поддерживал свойство ContextMenu.SourceControl
Элемент Timer
позволяет выполнять некоторые действия по истечении заданных интервалов времени. Чаще всего для работы с таймером разработчик применяет событие Tick
. Данное событие инициируется только в том случае, если свойство Enabled
имеет значение True
. Если нужно остановить таймер, то достаточно присвоить данному свойству значение False
.
Интервал отсчета времени задается свойством Interval
, а его значение указывает используемый промежуток времени в миллисекундах. Если рабочий интервал таймера должен составлять 3 с, то надо установить значение 3000.
Этот элемент управления уже применялся при работе с объектом ProgressBar
.
Элементы OpenFileDialog и SaveFileDialog
Практически в каждом приложении пользователь должен иметь возможность сохранить файл или открыть его. Разработчикам регулярно приходится реализовывать подобную функциональность в своих программах. При желании можно самому придумать и разработать интерфейс для подобной задачи. Но можно воспользоваться и стандартными диалоговыми окнами открытия и сохранения файла. Именно для этого применяются элементы управления OpenFileDialog
и SaveFileDialog
. К сожалению, в версии .NET Compact Framework возможности данных элементов управления серьезно урезаны. Разработчик может манипулировать файлами только в пределах папки My Documents
и вложенных папок следующего уровня. Поэтому папка My Documents\Programming\Sample
будет уже недоступна.
Рассматриваемые элементы управления размещаются в нижней части дизайнера формы рядом с элементом MainMenu
. При работе с данными элементами прежде всего надо позаботиться о свойстве Filter
, которое ограничивает список доступных файлов, фильтруя их по расширению. Свойство InitalDirectory
содержит имя папки, в которой по умолчанию располагаются файлы. Если это свойство оставить пустым, то обзор файлов начнется с самой папки My Documents
.
Основным методом для этих элементов является ShowDialog
. После его вызова на экране отображается модальное окно, в котором пользователь должен нажать кнопку OK
или Cancel
. При этом метод ShowDialog
возвращает значения DialogResult.OK
и DialogResult.Cancel
соответственно. Если получено значение DialogResult.OK
, то пользователь нажал кнопку OK
и в свойстве Filename
содержится полный путь к выбранному файлу.
Пример работы с элементами OpenFileDialog
и SaveFileDialog
приведен в листинге 3.14.
Листинг 3.14
private void butOpen_Click(object sender, EventArgs e) {
ofd.Filter = "DLL|*.dll|Картинки|*.jpg";
ofd.InitialDirectory = "\\My Documents\\Templates";
if (DialogResult.OK == ofd.ShowDialog()) {
statusBar1.Text = ofd.FileName;
} else {
statusBar1.Text = "Вы нажали на кнопку Отмена!";
}
}
Элементы HScrollBar и VScrollBar
Элементы управления HScrollBar
и VScrollBar
позволяют создавать полосы прокрутки для элементов, которые изначально не обладают этой функциональностью. Пользоваться этими полосами прокрутки совсем не сложно. Свойство Minimum
задает значение элемента, когда ползунок находится в крайней левой или в крайней верхней позиции, для HScrollBar
или VScrollBar
соответственно. Свойство Maximum
, задает максимальное значение для полос прокрутки. Значение свойства Value
зависит от положения ползунка. Оно всегда находится в диапазоне между значениями свойств Minimum
и Maximum
.
Читать дальше