html5-img
1 / 40

Курс по информационни технологии

Курс по информационни технологии. Занятие № 1 Desktop приложения. Windows Forms. Windows Presentation Foundation. Съдържание 1/ 1. Desktop приложения Windows Forms Windows Presentation Foundation. Desktop приложения. С какво се характеризират desktop приложенията?

kirk
Download Presentation

Курс по информационни технологии

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Курс по информационни технологии Занятие №1Desktop приложения. Windows Forms. Windows Presentation Foundation

  2. Съдържание 1/1 • Desktop приложения • Windows Forms • Windows Presentation Foundation

  3. Desktop приложения • С какво се характеризират desktop приложенията? • Графичен потребителски интерфейс (GUI) • Прозорци (форми) • Контроли • Събития и обработчици • Самостоятелни процеси (за разлика от уеб приложенията)

  4. Desktop приложения • Прозорци • Видима област • Заглавна лента • Системни бутони • Фиксиран/променлив размер • Главен прозорец

  5. Desktop приложения • Контроли • Визуални компоненти • Контейнери • Йерархия от контроли • Потребителски контроли

  6. Desktop приложения • Събития • Предизвикват се в определен момент от изпълнение на програмата или в отговор на външно явление • Могат да бъдат улавяни чрез обработчици, създадени от програмиста

  7. Desktop приложения • Съобщения • Опашка за съобщения • Цикъл за обработка на съобщения • Обработката е линейна (синхронна) • Нишка за потребителския интерфейс • Съобщенията обикновено предизвикват събития • Програмно изпращане на съобщения

  8. Desktop приложения • Модални диалози • Прозорци • Ограничават достъпа до останалите прозорци • Резултат от диалога

  9. Windows Forms • Какво е Windows Forms? • Част от .NET Framework • Платформа за managed desktop приложения • Обвивка и надграждане на Win32 API

  10. Windows Forms • Използване на Windows Forms • Windows Forms Application проект • Пространство от имена System.Windows.Forms

  11. Windows Forms • Прозорци (форми) • Базов клас Form • Windows Form файлов шаблон • Главна форма • Метод Show()

  12. Windows Forms • Често използвани свойства на формите • Size • Text • StartPosition • FormBorderStyle • MinimizeBox, MaximizeBox • ShowInTaskbar • ShowIcon • AcceptButton, CancelButton

  13. Windows Forms • Контроли • Базов клас Control • Label • TextBox • ListBox • ComboBox • CheckBox • RadioButton • Button

  14. Windows Forms • Контроли • ListView • TreeView • MonthCalendar • DateTimePicker • RichTextBox • WebBrowser

  15. Windows Forms • Често използвани свойства на контролите • Parent • Size • Location • Margin • Dock • Anchor • Text • Enabled • Visible

  16. Windows Forms • Често използвани свойства на контролите • ForeColor • BackColor • Font • TabIndex • Tag

  17. Windows Forms • Контейнери • Panel • GroupBox • FlowLayoutPanel • SplitContainer • TabControl • TableLayoutPanel

  18. Windows Forms • Събития • Обикновени събития в .NET • Всяка контрола предоставя събития, съответсващи на предназначението ѝ • Обработчици – делегати • Закачане на обработчици през визуалния редактор

  19. Windows Forms • Модални диалози • Методът ShowDialog() • Изброеният тип DialogResult • Свойството Form.DialogResult • Свойството Button.DialogResult

  20. Windows Forms • Data binding • Пряко обвързване между свойства на контроли и вътрешни обекти с данни • Предотвратява описването на излишен програмен код • Улеснява поддръжката • Не е приложимо в пълна степен в Windows Forms

  21. Windows Forms • Data binding – автоматично зареждане на списъци в списъчни контроли • Поддържа се от ListBox и ComboBox • Свойството DataSource – обект, който имплементира IList или IListSource • Свойството DisplayMember • Свойството ValueMember • Свойството SelectedValue

  22. Windows Presentation Foundation • Какво е Windows Presentation Foundation (WPF)? • Част от .NET Framework (от версия 3.0 насам) • Платформа за managed desktop приложения • Базирана на DirectX, а не на Win32 • Позволява разработката на Rich User Interface • Разделя форматирането на интерфейса от поведението на програмата (XAML и code-behind)

  23. Windows Presentation Foundation • Какво е XAML? • eXtensible Application Markup Language • Базиран на XML • Служи за деклариране на потребителски интерфейс • Използва се в WPF, Silverlight и WinRT • Visual Studio предоставя удобен визуален редактор за XAML

  24. Windows Presentation Foundation • Защо XAML? • Разделя се външният вид на приложението от поведението му • Много варианти за потребителски интерфейс за еднакво поведение • Възможност интерфейсът да се проектира от дизайнер, а функционалността – от програмист

  25. Windows Presentation Foundation • Използване на WPF • WPF Application проект • Пространство от имена System.Windows • .xamlи .xaml.csфайлове

  26. Windows Presentation Foundation • Прозорци • Базов клас Window • Коренов елемент Window • Window (WPF) файлов шаблон • Главен прозорец – свойството Application.MainWindow • Метод Show()

  27. Windows Presentation Foundation • Често използвани свойства на прозорците • Width, Height • Title • WindowStartupLocation • Top, Left • WindowStyle • ResizeMode • ShowInTaskbar • Icon

  28. Windows Presentation Foundation • Контроли • Базов клас Control • Label • TextBox • ListBox • ComboBox • CheckBox • RadioButton • Button

  29. Windows Presentation Foundation • Контроли • Border • ListView • TreeView • Calendar • DatePicker • RichTextBox • WebBrowser

  30. Windows Presentation Foundation • Често използвани свойства на контролите • Parent • Width, Height • HorizontalAlignment, VerticalAlignment • Content • Items • HorizontalContentAlignment, VerticalContentAlignment • Margin • IsEnabled • Visibility

  31. Windows Presentation Foundation • Често използвани свойства на контролите • Foreground • Background • FontFamily, FontSize • TabIndex • Tag

  32. Windows Presentation Foundation • Контейнери • Canvas • GroupBox • StackPanel • TabControl • UniformGrid • Grid

  33. Windows Presentation Foundation • Събития • Маршрутизирани събития • Стратегия за маршрутизиране: • Отгоре надолу (tunneling) • Отдолу нагоре (bubbling) • Директно (direct) – аналогично с обикновените събития в .NET • Двойки tunneling и bubbling събития

  34. Windows Presentation Foundation • Модални диалози • Методът ShowDialog() • Свойството Window.DialogResult

  35. Windows Presentation Foundation • Data binding в WPF • Широко приложим подход • Data binding е една от основните цели при проектирането на WPF платформата • Препоръчва се пред алтернативния подход (control-driven design) • Свойството FrameworkElement.DataContext

  36. Windows Presentation Foundation • Markup разширението Binding • Служи за обвързване на свойство на контролата с данни от контекста • Възможно е да се укаже сложен път до свойството, съдържащо търсените данни • Възможно е обвързването да бъде еднопосочно или двупосочно • Възможно е да се укаже тип на обект, служещ за преобразуване на данните

  37. Windows Presentation Foundation • Какво е Model-View-ViewModel(MVVM)? • Архитектура, при която програмата е разделена на три части със строго определена роля • Models – това са класове, които служат за вътрешно съхранение на данни, но не описват функционалност • Views – това са контроли/прозорци, които описват потребителския интерфейс на приложението, но не служат за съхранение на данни ине описват функционалност • View Models – това са класове, които описват функционалността на приложението и служат за посредници между моделите и изгледите

  38. Windows Presentation Foundation • Защо MVVM? • Трислойна архитектура • Изолира всеки от слоевете от промени в реализацията на останалите • Позволява реализирането на много изгледи за едни и същи данни (дори и едновременното обвързване на няколко изгледа с един и същи абстрактен обект в паметта)

  39. Въпроси?

  40. Благодаря! • Александър Далемски • sasho@david.bg • musashi.bg@gmail.com • Skype: musasho • https://www.facebook.com/adalemski • ДАВИД академия • acad@david.bg • http://acad.david.bg/ • @david_academy • https://www.facebook.com/groups/david.academy/

More Related