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)
Trang 1Windows Presentation Foundation (WPF)
Phát triển Ứng dụng Giao diện
Trang 3Tầm quan trọng của giao diện người dùng
Trong các ứng dụng hiện đại, giao diện người dùng trực quan chiếm vị trí hết sức quan trọng Việc trình diễn đúng thông tin, theo đúng cách và vào đúng
thời điểm có thể đem lại những giá trị kinh tế xã hội đáng kể
việc tích hợp đồ họa, media, văn bản và các thành phần trực quan khác như một thể thống nhất đóng vai trò mấu chốt
đáp ứng được việc hiển thị nhất quán đa nền tảng (desktop, browser,…)
Trang 4Tầm quan trọng của giao diện người dùng (tt)
sẽ 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 về 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 mỗi ứng dụng phù hợp với mỗi nề
tảng
chung giải quyết những thách thức đã nêu trên
Trang 5Khái niệm WPF
thống API mới hỗ trợ việc xây dựng giao diện đồ
hoạ trên nền Windows
tăng cường khả năng lập trình giao diện của lập
trình viên bằng cách cung cấp các API cho phép tận dụng những lợi thế về đa phương tiện hiện đại
có trong Windows Vista và Windows Server 2008 Đồng thời, WPF cũng có thể hoạt động trên nền
Windows XP Service Pack 2 hoặc mới hơn, và cả Windows Server 2003
Trang 6Khái niệm WPF (tt)
giao diện người dùng (XAML) và logic nghiệp vụ
(C# , VB.NET)
Cung cấp một nền tảng thống nhất để xây dựng giao diện người dùng
Cho phép người lập trình và người thiết kế giao diện làm việc cùng nhau một cách dễ dàng
Cung cấp một công nghệ chung để xây dựng giao
diện người dùng trên cả Windows và trình duyệt Web
Trang 7Khái niệm WPF (tt)
dùng
Windows Forms PDF
Windows Forms / GDI+
Windows Media Player
Trang 8Khái niệm WPF (tt)
Khả năng làm việc chung giữa người thiết kế giao diện và 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 để hiện thực bản thiết
kế
Việc hiểu đúng, đảm bảo được yêu cầu từ thiết kế là thách thức với người lập trình
Không nắm bắt công nghệ, những hạn chế trong thiết
kế sẽ khiến người thiết kế tạo ra bản vẽ không phù hợp thực tế
WPF đưa ra ngôn ngữ đặc tả XAML (eXtensible
Application Markup Language) cho phép mô tả chính xác giao diện
Trang 9Khái niệm WPF (tt)
Người thiết kế có thể mô tả giao diện người dùng và tương tác với nó thông qua một công cụ, chẳng hạn như Microsoft Expression Interactive Designer Chỉ tập trung vào việc định ra diện mạo và cảm quan cho giao diện đồ họa WPF, công cụ này sinh các đoạn mô tả
giao diện thể hiện qua ngôn ngữ XAML
Lập trình viên sau đó sẽ nhập đoạn mô tả XAML đó
vào môi trường lập trình, chẳng hạn như Microsoft
Visual Studio Thay vì lập trình viên phải tái tạo lại giao diện từ đầu dựa trên một ảnh tĩnh mà người thiết kế cung cấp, bản thân các đoạn XAML này sẽ được
Microsoft Visual Studio biên dịch để tái tạo thành giao diện đồ họa đúng theo mô tả
Trang 10Khái niệm WPF (tt)
trên trình duyệt Web
Lập trình viên có thể tạo ra một ứng dụng trình duyệt XAML (XBAP) sử dụng WPF chạy trên Browser
Cùng đoạn code này có thể được dùng để sinh ứng dụng WPF chạy độc lập trên Windows
Trang 12Khái niệm WPF (tt)
WPF không chạy trên windows 2000 hay cũ hơn
Có một số điều kiểm trên Windows Forms mà WPF hiện chưa hỗ trợ như: DataGridView,…
Trang 13Tính năng cơ bản của WPF
Đồ họa vector (Vector Graphics)
Tất cả đồ họa trong WPF là sử dụng Direct3D
ứng dụng đồ họa chú trọng hiệu năng
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 và
hỗ trợ hệ màu 32-bit ARGB
Trang 14Tính năng cơ bản của WPF (tt)
Rich Text Model
WPF bao gồm một số tính năng kết xuất văn bản vô cùng phong phú
Xây dựng font quốc tế từ font kết hợp
WPF render text với các ưu điểm của công nghệ
ClearType
Trang 15Tính năng cơ bản của WPF (tt)
WPF hỗ trợ hình động dựa trên thời gian
Animation có thể được kích hoạt bởi event bên ngoài (từ người dùng,…)
Animation có thể được định nghĩa trên mối đối tượng trực tiếp từ XAML
Trang 16Tính năng cơ bản của WPF (tt)
Trang 17Tính năng cơ bản của WPF (tt)
Styles
Trong WPF một styles là một tập hợp các thuộc tính
áp dụng cho nội dung sử dụng để render hình ảnh Tương tự như 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 sự kiện người dùng
Templates trong WPF giúp thay đổi toàn bộ giao diện
ControlTemplate
ItemsPanelTemplate
DataTemplate
HierarchicalDataTemplate
Trang 18Tính năng cơ bản của WPF (tt)
Là phiên bản trừu tượng của event
WPF hỗ trợ cho các command làm giảm số lượng mã chúng ta cần phải viết
Nó cho phép chúng ta linh hoạt hơn để 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 và binding
Ưu điểm của commands thể hiện qua 3 đặc trưng
command
Commands mục đích thực hiện 2 việc:
Trang 19Các thành phần của WPF
Framework, WPF tổ chức các chức năng theo một nhóm namespace cùng trực thuộc namespace
System.Windows
trang XAML và phần code tương ứng được viết
bằng C# hoặc Visual Basic, còn gọi là các file
code-behind
Trang 20Các thành phần của WPF (tt)
Trang 22WPF so với Lập trình WinForm (tt)
WinForm
Trang 23}
}
Trang 24Demo cơ bản (tt)
<Page
xmlns="http://schemas.microsoft.com/winfx/avalon/2005" xmlns:x="http://schemas.microsoft.com/winfx/xaml/2005"> <TextBlock>Hello World!</TextBlock>
</Page>