Для этого необходимо войти на сайт www.microsoft.com и набрать в строке поиска строку DateTimePickerDesignTimeSampleSetup.exe. Поиск выдаст ссылку на статью Дж. Вилсона Adding Designer Support to the.NET Compact Framework DateTimePicker Control, внутри которой есть ссылка на необходимый файл. Но можно воспользоваться и прямой ссылкой download.microsoft.com/download/c/0/a/c0a7cea4-e9c1-4e80-9e5a-afed9a664876/DateTimePickerDesignTimeSampleSetup.exe.
Загрузив этот файл, его необходимо запустить. Программа установки выполнит все необходимые операции. Необходимые файлы будут размещены в папке С: \ Program Files\.NET Compact Framework Samples\DateTimePicker DesignTime Sample.
Для того чтобы воспользоваться компонентом, необходимо проделать нехитрую последовательность действий.
? В папке C: \Program Files\.NET Compact Framework Samples\DateTimePicker DesignTime Sample\code\CS найти файл DateTimePickerControl.sIn и открыть его двойным щелчком мыши.
? В открывшемся экземпляре Visual Studio выполнить команду Deploy Solution.
? Закрыть Visual Studio.
? Перейти в папку C: \Program Files\.NET Compact Framework Samples\DateTimePicker DesignTime Sample\code\CS\DateTimePickerControl.Deployment\Debug, найти в этой папке файл Setup.exe, запустить его и провести установку. После этого можно пользоваться компонентом DateTime Picker.
Теперь нужно модифицировать наш проект при помощи этого компонента.
Упражнение 6.2 (продолжение)
34. В форме Forml.vb нужно удалить компонент Labell и заменить его компонентом DateTimePicker, который можно найти после установки на палитре ToolBox.
Рис. 6.15. Компонент DateTimePicker в палитре и на форме.
35. В процедуре Form1_Load удалить строку
Label1.Text = System.DateTime.Today.ToShortDateString
36. Вместо нее добавить следующую строку
DateTimePicker1.Value = System.DateTime.Today
37. В процедурах PictureBox1_Click и PictureBox2_Click строку Data_Save(Label1.Text) нужно заменить строкой Data_Save(DateTimePicker1.Value.ToShortDateString).
38. В процедуре Form1_Closing нужно удалить строку Data_Save(Label1.Text) и вместо нее ввести строку Data_Save(DateTimePicker1.Value.ToShortDateString).
39. В процедуре Form1_Closing строку Data_Save(Label1.Text) нужно заменить вызовом обновленного варианта функции сохранения данных Data_Save(DateTimePicker1. Value.ToShortDateString).
40. Также нужно объявить в начале формы еще одну переменную при помощи конструкции Dim dtpClick As Boolean.
41. В код формы нужно добавить еще две процедуры, показанные в листинге 6.22.
Листинг 6.22
Private Sub DateTimePicker1_ValueChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles DateTimePicker1.ValueChanged
If dtpClick = True Then
Data_Save(D.ToShortDateString)
D = DateTimePicker1.Value
Data_Load(D.ToShortDateString)
dtpClick = False
End If
End Sub
Private Sub DateTimePicker1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles DateTimePicker1.Click
dtpClick = True
End Sub
42. Теперь проект можно снова запустить на выполнение. Результат работы при щелчке на компоненте DateTimePicker должен быть таким, как показано на рис. 6.16.
Рис. 6.16. Компонент DateTimePicker в работающем проекте.
43. Теперь можно поработать над удобством использования приложения. В область размещения невидимых компонентов нужно добавить компонент ContextMenu. Нужно щелкнуть на этом компоненте, а затем на форме добавить к его отображению пункты меню Добавить, Редактировать и Удалить, как это показано на рис. 6.17.
Рис. 6.17. Редактирование контекстного меню.
44. Двойной щелчок на любом из этих пунктов в дизайнере форм создаст обработчик события щелчка на пункте контекстного меню в редакторе кода. Для трех этих обработчиков надо использовать код, приведенный в листинге 6.23. Листинг 6.23
Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MenuItem1.Click
PictureBox3_Click(sender, e)
End Sub
Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MenuItem2.Click
PictureBox4_Click(sender, e)
End Sub
Private Sub MenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MenuItem3.Click
PictureBox5_Click(sender, e)
End Sub
45. Выделить компонент ListView1 и в окне Properties установить для него свойство ContextMenu равным ContextMenu1.
46. Теперь после запуска программы при нажатии стилусом на компоненте ListView в окне будет всплывать контекстное меню с заданными пунктами. Естественно, выбор любого из пунктов будет приводить к тому же результату, что и щелчок на соответствующих компонентах PictureBox (рис. 6.18).
Рис. 6.18. Контекстное меню компонента ListView.
47. Положить на область размещения невидимых компонентов компонент Image-List. Выделить этот компонент, перейти в окно Properties и нажать кнопку вызова окна редактирования свойства Images. Нажимая кнопку Add в этом окне, нужно добавить к коллекции изображений файлы Add.jpg, Edit.jpg и Delete.jpg.
48. Разместить на форме справа от основного меню компонент ToolBar. Перейти в окно Properties и найти свойство ImageList. Оно должно получить значение ImageListl. Затем нужно нажать кнопку редактирования свойства Buttons. На экран будет выведено окно редактирования коллекции кнопок. При помощи кнопки Add нужно добавить к коллекции три кнопки и для каждой из них установить в правой области окна свойство Imagelndex равным, соответственно, О, 1 и 2.
Читать дальше
Конец ознакомительного отрывка
Купить книгу