Tải bản đầy đủ (.pdf) (24 trang)

Bài giảng Phát triển ứng dụng giao diện Windows Presentation Foundation (WPF)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (632.36 KB, 24 trang )

Phát triển Ứng dụng Giao diện
Windows Presentation Foundation (WPF)


Nội dung
 Tầm quan trọng của giao diện người dùng
 Khái niệm WPF
 Tính năng cơ bản của WPF
 Các thành phần của WPF


Tầ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ể.
 Để có được một giao diện người dùng như vậy,
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.
 Bên cạnh đó giao diện người dùng hiện đại cần phải
đáp ứng được việc hiển thị nhất quán đa nền tảng
(desktop, browser,…).


Tầm quan trọng của giao diện người dùng (tt)
 Xây dựng được giao diện đáp ứng các yêu cầu trên

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.
 WPF ra đời chính là để xây dựng một nền tảng

chung giải quyết những thách thức đã nêu trên.


Khái niệm WPF
 WPF (Windows Presentation Foundation) là hệ

thống API mới hỗ trợ việc xây dựng giao diện đồ
hoạ trên nền Windows.
 Được xem như thế hệ kế tiếp của WinForms, WPF
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.
 Là một bộ phận của .NET Framework 3.0, WPF sẵn
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.


Khái niệm WPF (tt)
 WPF cung cấp một sự tách biệt rõ ràng giữa các


giao diện người dùng (XAML) và logic nghiệp vụ
(C# , VB.NET).
 WPF được xây dựng nhằm vào ba mục tiêu cơ bản
 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.


Khái niệm WPF (tt)
 Nền tảng thống nhất để 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
và các control)

x

x

On-screen văn bản

x

x

Fixed-format văn bản
Hình ảnh

x

x
x

Video và âm thanh

Đồ họa 2 chiều
Đồ họa 3 chiều


x

x

x

x

x
x

x


Khá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


Khái niệm WPF (tt)
 Với XAML
 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ả.


Khái niệm WPF (tt)
 Công nghệ chung cho giao diện trên Windows và

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.



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ế của WPF
 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,…


Tí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.
 Direct3D (một phần của DirectX) được sử dụng trong những
ứng dụng đồ họa chú trọng hiệu năng.
 Sử dụng render từ video card (dựng hình từ phần cứng).
 Kết quả là 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 và
hỗ trợ hệ màu 32-bit ARGB.


Tí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.


Tính năng cơ bản của WPF (tt)
 Hình ảnh động (Animation)
 WPF hỗ trợ hình động dựa trên thời gian.
 Thời gian trình diễn được khởi tạo và quản lý bởi WPF.
 Sự chuyển đổi cảnh phối hợp dựa vào storyboard.
 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.


Tính năng cơ bản của WPF (tt)

 Video và Audio
 WPF có thể kết hợp video và audio vào trong giao

diện người dùng.
 Audio được hỗ trợ trong WPF là phần nhỏ các chức
năng sẵn có của Win32 và WMP.
 WPF hỗ trợ video trong các định dạng WMV, MPEG và
AVI.
 Mối quan hệ giữa video và animation cũng được hỗ
trợ.
 Animation có thể được đồng bộ với media.


Tí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


Tính năng cơ bản của WPF (tt)
 Commands (lệnh)
 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
 WPF định nghĩa sẵn nhiều command.
 Commands có hỗ trợ cho các hành động nhập liệu.

 Một số WPF control xây dựng sẵn các hành vi dựa trên nhiều

command.

 Commands mục đích thực hiện 2 việc:
 Kiểm tra action có sẵn.
 Thực hiện action.


Các thành phần của WPF

 Giống như các thành phần khác của .NET

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.
 Một ứng dụng WPF điển hình gồm một tập các
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 codebehind.


Các thành phần của WPF (tt)



WPF so với Lập trình WinForm
 WPF có một số lợi thế so với lập trình WinForm nhờ

tích hợp toàn diện, cung cấp một nền tảng thống
nhất cho việc sử dụng video, audio, văn bản, đồ họa
2D và 3D.
 Các ứng dụng WPF có thể tận dụng lợi thế của
Graphics Processing Units trên card đồ họa cho
hình ảnh mượt mà hơn.
 WPF cho phép tách rời các công việc thiết kế cho
người thiết kế và cài đặt chức năng cho lập trình
viên.


WPF so với Lập trình WinForm (tt)
 WPF có khả năng tạo giao diện đẹp, tùy biến hơn


WinForm.


Demo cơ bản
 C# example
using System;
using System.Windows;
namespace AvalonExample {
class MyApp {
[STAThread]
static void Main(){
MessageBox.Show(“Hello World!”);
}
}
}


Demo cơ bản (tt)
 XAML example
xmlns=" />xmlns:x=" /><TextBlock>Hello World!</TextBlock>
</Page>



×