Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)
Phát triển Ứng dụng Giao diện Windows Presentation Foundation (WPF) Nội dung Tầm quan trọng giao diện người dùng Khái niệm WPF Tính WPF Các thành phần WPF Tầm quan trọng giao diện người dùng Trong ứng dụng đại, giao diện người dùng trực quan chiếm vị trí quan trọng Việc trình diễn thông tin, theo cách vào thời điểm đem lại giá trị kinh tế xã hội đáng kể Để có giao diện người dùng vậy, việc tích hợp đồ họa, media, văn thành phần trực quan khác thể thống đóng vai trị mấu chốt Bên cạnh giao diện người dùng đại cần phải đáp ứng việc hiển thị quán đa tảng (desktop, browser,…) Tầm quan trọng giao diện người dùng (tt) Xây dựng giao diện đáp ứng yêu cầu gặp nhiều khó khăn Cần đội ngũ lập trình có trình độ kỹ thuật cao Cần có trình độ cao thiết kế giao diện để phối hợp trình diễn hài hịa, hợp lý Phải xây dựng ứng dụng phù hợp với nề tảng WPF đời để xây dựng tảng chung giải thách thức nêu Khái niệm WPF WPF (Windows Presentation Foundation) hệ thống API hỗ trợ việc xây dựng giao diện đồ hoạ Windows Được xem hệ WinForms, WPF tăng cường khả lập trình giao diện lập trình viên cách cung cấp API cho phép tận dụng lợi đa phương tiện đại Là phận NET Framework 3.0, WPF sẵn có Windows Vista Windows Server 2008 Đồng thời, WPF hoạt động Windows XP Service Pack hơn, Windows Server 2003 Khái niệm WPF (tt) WPF cung cấp tách biệt rõ ràng giao diện người dùng (XAML) logic nghiệp vụ (C# , VB.NET) WPF xây dựng nhằm vào ba mục tiêu Cung cấp tảng thống để xây dựng giao diện người dùng Cho phép người lập trình người thiết kế giao diện làm việc cách dễ dàng Cung cấp công nghệ chung để xây dựng giao diện người dùng Windows trình duyệt Web Khái niệm WPF (tt) Nền tảng thống để xây dựng giao diện người dùng Windows Forms PDF Windows Forms / GDI+ Windows Media Player Direct3D WPF Giao diện đồ họa (form control) x x On-screen văn x x Fixed-format văn Hình ảnh x x x Video âm Đồ họa chiều Đồ họa chiều x x x x x x x Khái niệm WPF (tt) Khả làm việc chung người thiết kế giao diện lập trình viên Người thiết kế sử dụng công cụ để vẽ giao diện Lập trình viên sử dụng mã trình để thực thiết kế Việc hiểu đúng, đảm bảo yêu cầu từ thiết kế thách thức với người lập trình Khơng nắm bắt công nghệ, hạn chế thiết kế khiến người thiết kế tạo vẽ không phù hợp thực tế WPF đưa ngôn ngữ đặc tả XAML (eXtensible Application Markup Language) cho phép mơ tả xác giao diện Khái niệm WPF (tt) Với XAML Người thiết kế mơ tả giao diện người dùng tương tác với thơng qua công cụ, chẳng hạn Microsoft Expression Interactive Designer Chỉ tập trung vào việc định diện mạo cảm quan cho giao diện đồ họa WPF, công cụ sinh đoạn mô tả giao diện thể qua ngơn ngữ XAML Lập trình viên sau nhập đoạn mơ tả XAML vào mơi trường lập trình, chẳng hạn Microsoft Visual Studio Thay lập trình viên phải tái tạo lại giao diện từ đầu dựa ảnh tĩnh mà người thiết kế cung cấp, thân đoạn XAML Microsoft Visual Studio biên dịch để tái tạo thành giao diện đồ họa theo mô tả Khái niệm WPF (tt) Công nghệ chung cho giao diện Windows trình duyệt Web Lập trình viên tạo ứng dụng trình duyệt XAML (XBAP) sử dụng WPF chạy Browser Cùng đoạn code dùng để sinh ứng dụng WPF chạy độc lập Windows Khái niệm WPF (tt) Quá trình phát triển cơng nghệ lập trình giao diện Windows API MFC Microsoft Foundation Class Library Windows Forms Windows Presentation Foundation Khái niệm WPF (tt) Hạn chế WPF WPF không chạy windows 2000 hay cũ Có số điều kiểm Windows Forms mà WPF chưa hỗ trợ như: DataGridView,… Tính WPF Đồ họa vector (Vector Graphics) Tất đồ họa WPF sử dụng Direct3D Direct3D (một phần DirectX) sử dụng ứng dụng đồ họa trọng hiệu Sử dụng render từ video card (dựng hình từ phần cứng) Kết giao diện đồ họa chất lượng cao Sử dụng đồ họa vector giúp cho việc thay đổi kích thước (scale) dễ dàng mà khơng giảm chất lượng WPF sử dụng hệ thống điểm ảnh dấu chấm động hỗ trợ hệ màu 32-bit ARGB Tính WPF (tt) Rich Text Model WPF bao gồm số tính kết xuất văn vô phong phú Xây dựng font quốc tế từ font kết hợp WPF render text với ưu điểm công nghệ ClearType Tính WPF (tt) Hình ảnh động (Animation) WPF hỗ trợ hình động dựa thời gian Thời gian trình diễn khởi tạo quản lý WPF Sự chuyển đổi cảnh phối hợp dựa vào storyboard Animation kích hoạt event bên ngồi (từ người dùng,…) Animation định nghĩa mối đối tượng trực tiếp từ XAML Tính WPF (tt) Video Audio WPF kết hợp video audio vào giao diện người dùng Audio hỗ trợ WPF phần nhỏ chức sẵn có Win32 WMP WPF hỗ trợ video định dạng WMV, MPEG AVI Mối quan hệ video animation hỗ trợ Animation đồng với media Tính WPF (tt) Styles Trong WPF styles tập hợp thuộc tính áp dụng cho nội dung sử dụng để render hình ảnh Tương tự khái niệm CSS Sử dụng chúng làm tiêu chuẩn đặc trưng phi định dạng WPF styles giúp áp dụng hiệu ứng đặc trưng với kiện người dùng Templates WPF giúp thay đổi toàn giao diện ControlTemplate ItemsPanelTemplate DataTemplate HierarchicalDataTemplate Tính WPF (tt) Commands (lệnh) Là phiên trừu tượng event WPF hỗ trợ cho command làm giảm số lượng mã cần phải viết Nó cho phép linh hoạt để thay đổi giao diện người dùng mà không cần phá vỡ tính logic Commands gồm có action, source, target binding Ưu điểm commands thể qua đặc trưng WPF định nghĩa sẵn nhiều command Commands có hỗ trợ cho hành động nhập liệu Một số WPF control xây dựng sẵn hành vi dựa nhiều command Commands mục đích thực việc: Kiểm tra action có sẵn Thực action Các thành phần WPF Giống thành phần khác NET Framework, WPF tổ chức chức theo nhóm namespace trực thuộc namespace System.Windows Một ứng dụng WPF điển hình gồm tập trang XAML phần code tương ứng viết C# Visual Basic, gọi file codebehind Các thành phần WPF (tt) WPF so với Lập trình WinForm WPF có số lợi so với lập trình WinForm nhờ tích hợp tồn diện, cung cấp tảng thống cho việc sử dụng video, audio, văn bản, đồ họa 2D 3D Các ứng dụng WPF tận dụng lợi Graphics Processing Units card đồ họa cho hình ảnh mượt mà WPF cho phép tách rời công việc thiết kế cho người thiết kế cài đặt chức cho lập trình viên WPF so với Lập trình WinForm (tt) WPF có khả tạo giao diện đẹp, tùy biến WinForm Demo C# example using System; using System.Windows; namespace AvalonExample { class MyApp { [STAThread] static void Main(){ MessageBox.Show(“Hello World!”); } } } Demo (tt) XAML example Hello World! ... trình phát triển công nghệ lập trình giao diện Windows API MFC Microsoft Foundation Class Library Windows Forms Windows Presentation Foundation Khái niệm WPF (tt) Hạn chế WPF WPF không chạy windows. .. nghệ chung cho giao diện Windows trình duyệt Web Lập trình viên tạo ứng dụng trình duyệt XAML (XBAP) sử dụng WPF chạy Browser Cùng đoạn code dùng để sinh ứng dụng WPF chạy độc lập Windows Khái...Nội dung Tầm quan trọng giao diện người dùng Khái niệm WPF Tính WPF Các thành phần WPF Tầm quan trọng giao diện người dùng Trong ứng dụng đại, giao diện người dùng trực quan chiếm