Windows Presentation Foundation hay hotline tắt là WPF – là một trong những nền tảng được cho phép developer rất có thể tạo ra những ứng dụng trên nền .NET framework mang lại Windows nói chung. Cũng có thể gọi WPF là 1 trong những GUI framework. Nó thành lập và hoạt động sau Winform và tốt hơn người tiền nhiệm về những mặt.

Bạn đang xem: Window và xaml trong lập trình ứng dụng, wpf application là gì


*

WPF là gì?


1. WPF là gì?

WPF, viết tắt của Windows Presentation Foundation, là hệ thống API mới cung cấp việc xây dựng giao diện đồ hoạ bên trên nền Windows. Được xem như thế hệ tiếp nối của WinForms, WPF tăng cường khả năng lập trình bối cảnh của xây dựng viên bằng cách cung cấp các API cho phép tận dụng những điểm mạnh về đa phương tiện đi lại hiện đại. Là một phần tử của .NET Framework 3.0, WPF sẵn có trong Windows Vista với Windows hệ thống 2008. Đồng thời, WPF cũng có thể có thể chuyển động trên nền Windows XP Service Pack 2 hoặc new hơn, với cả Windows vps 2003.


*

WPF là gì?


WPF được xây dựng nhằm mục tiêu vào ba mục tiêu cơ bản:

Cung cung cấp một gốc rễ thống tuyệt nhất để kiến thiết giao diện tín đồ dùng;Cho phép bạn lập trình cùng người kiến thiết giao diện thao tác làm việc cùng nhau một cách dễ dàng;Cung cấp một technology chung để xây cất giao diện người tiêu dùng trên cả Windows cùng trình coi sóc Web.

2. Nền tảng gốc rễ thống độc nhất vô nhị để chế tạo giao diện bạn dùng

Trước lúc WPF ra đời, việc tạo giao diện người dùng theo hồ hết yêu cầu thể hiện ở ví dụ trên đòi hỏi sử dụng rất nhiều công nghệ khác nhau. Để tạo form, những control và những tính năng kinh điển khác của một giao diện bối cảnh Windows, thông thường lập trình viên sẽ chọn Windows Forms, một phần của .NET Framework. Nếu yêu cầu hiển thị văn bản, Windows Forms có một trong những tính năng hỗ trợ văn phiên bản trực tiếp hoặc hoàn toàn có thể sử dụng Adobe’s PDF để hiển thị văn bạn dạng có khuôn dạng thay định.

Đối với hình ảnh và giao diện 2 chiều, lập trình sẵn viên sẽ sử dụng GDI+, một quy mô lập trình riêng lẻ có thể truy nhập qua Windows Forms. Để hiển thị đoạn clip hay phạt âm thanh, lập trình viên lại phải thực hiện Windows Media Player, cùng với đồ họa 3 chiều, anh ta lại cần dùng Direct3D, một thành phần chuẩn chỉnh khác của Windows. Cầm lại, quá trình cải cách và phát triển giao diện người tiêu dùng theo yêu cầu trở buộc phải phức tạp, đòi hỏi lập trình viên quá nhiều năng lực công nghệ.

*

WPF là chiến thuật hợp duy nhất nhằm giải quyết tất cả phần nhiều vấn đề công nghệ nêu trên, hay nói cách khác, WPF cung ứng nhiều công dụng lập trình giao diện trong thuộc một technology đơn nhất. Điều này giúp cho quy trình tạo giao diện người tiêu dùng trở nên tiện lợi hơn xứng đáng kể.

Hình dưới cho thấy một giao diện làm chủ và theo dõi dịch nhân gồm sự phối hợp của hình ảnh, text, giao diện 2 chiều/3 chiều với nhiều thông tin trực quan lại khác. Toàn bộ đều được tạo thành bằng WPF – thiết kế viên không buộc phải viết code để áp dụng các technology chuyên biệt như GDI+ xuất xắc Direct3D.

*

Tuy nhiên, WPF thành lập không tức là tất cả những technology nêu bên trên bị vậy thế. Windows Forms vẫn có giá trị, thậm chí là trong WPF, một vài ứng dụng mới vẫn sẽ áp dụng Windows Forms. Windows truyền thông Player vẫn đóng một sứ mệnh công cụ độc lập để đùa nhạc cùng trình chiếu video. PDF cho văn bản vẫn liên tiếp được sử dụng. Direct3D vẫn là technology quan trọng vào games và các dạng ứng dụng không giống (Trong thực tế, bạn dạng thân WPF dựa vào Direct3D để tiến hành mọi màn trình diễn đồ họa).

Việc tạo nên một giao diện người dùng tiến bộ không chỉ là việc hợp nhất các công nghệ sẵn có khác nhau. Nó còn diễn tả ở việc tận dụng lợi điểm của card hình ảnh hiện đại. Để giải phóng đầy đủ hạn chế của hình ảnh bitmap, WPF dựa hoàn toàn trên giao diện vector, có thể chấp nhận được hình hình ảnh tự động thay đổi kích thước để phù hợp với size và độ phân giải của screen mà nó được hiển thị.

Bằng câu hỏi hợp nhất tất cả các công nghệ quan trọng để tạo ra một giao diện người dùng vào một nền tảng solo nhất, WPF đơn giản dễ dàng hóa xứng đáng kể quá trình của thiết kế viên giao diện. Với bài toán yêu cầu lập trình viên học tập một môi trường phát triển duy nhất, WPF đóng góp phần làm giảm giá thành cho việc xây dựng và duy trì ứng dụng. Và bằng việc cho phép tích hợp đa dạng và phong phú nhiều phương pháp biểu diễn tin tức trên giao diện người dùng, WPF góp phần nâng cao chất lượng, và từ đó là quý giá công việc, của cách thức người dùng ảnh hưởng với ứng dụng trên Windows.

3. Năng lực làm bài toán chung giữa bạn thiết kế giao diện và thiết kế viên

Trong thực tế, vấn đề xây dựng một giao diện người dùng phức vừa lòng như trong ví dụ về ứng dụng quản lý người bị bệnh trên yên cầu những năng lực ít thấy ở phần đa lập trình viên đối chọi thuần, cơ mà chỉ rất có thể tìm thấy ở các người kiến tạo giao diện chăm nghiệp. Nhưng thắc mắc đặt ra là làm sao để bạn thiết kế và lập trình viên hoàn toàn có thể làm vấn đề cùng nhau?

Thông thường, người kiến thiết giao diện thực hiện một luật pháp đồ họa để tạo nên những hình ảnh tĩnh về cách sắp xếp giao diện bên trên màn hình. đều hình ảnh này tiếp đến được gửi tới thiết kế viên cùng với nhiệm vụ tạo thành mã trình nhằm hiện thực hóa bối cảnh đã thiết kế. Đôi thời điểm vẽ ra một giao diện thì dễ dàng và đơn giản với người thiết kế, dẫu vậy để đổi thay nó thành hiện nay thực rất có thể là khó khăn hoặc bất khả thi với xây dựng viên.

Hạn chế về công nghệ, sức ép tiến độ, thiếu hụt kỹ năng, phát âm nhầm hoặc dễ dàng là bất đồng ý kiến có thể khiến lập trình viên không đáp ứng nhu cầu được vừa đủ yêu ước từ tín đồ thiết kế. Do vậy, điều quan trọng ở đây là một cách thức để hai đội công tác chủ quyền này có thể làm vấn đề với nhau mà không làm gắng đổi chất lượng của bối cảnh đã thiết kế.

Để thực hiện được điều này, WPF gửi ra ngôn từ đặc tả eXtensible Application Markup Language (XAML). XAML định ra một tập các thành phần XML như Button, TextBox, Label…, nhằm mục đích định nghĩa các đối tượng đồ họa khớp ứng như nút bấm, vỏ hộp thoại, nhãn…, với nhờ đó được cho phép mô tả chính xác diện mạo của giao diện fan dùng. Các bộ phận XAML cũng chứa các thuộc tính, có thể chấp nhận được thiết lập nhiều tính chất khác nhau của đối tượng người tiêu dùng đồ họa tương ứng.

Ví dụ, đoạn mã sau sẽ tạo nên ra một nút bấm màu đỏ “Click me”:

Mỗi thành phần XAML lại tương ứng với một tờ WPF, với mỗi thuộc tính của thành phần đó lại tương ứng với thuộc tính tuyệt sự kiện của lớp này. Chẳng hạn, nút bấm màu đỏ trong lấy ví dụ như trên hoàn toàn có thể tạo bởi C# code như sau:

Button btn = new Button();btn.Background = Brushes.Red;btn.Content = "Click me";Nếu như gần như thứ hoàn toàn có thể biểu diễn bằng XAML thì cũng rất có thể biểu diễn bằng đoạn mã, thì thắc mắc đặt ra là XAML có ý nghĩa sâu sắc gì? Câu trả lời là vấn đề xây dựng các công cầm sinh với sử dụng các đặc tả bằng XML dễ dàng hơn nhiều so với desgin một cơ chế tương tự thao tác làm việc với đoạn mã. Vị vậy, XAML mở ra một phương thức tốt hơn để lập trình viên cùng người xây đắp làm vấn đề với nhau. Hình dưới đây minh họa quá trình này.

*

Người thiết kế có thể mô tả giao diện người dùng và shop với nó thông sang một công cụ, chẳng hạn như Microsoft Expression Interactive Designer. Chỉ tập trung vào việc định ra dung mạo và cảm quan cho giao diện giao diện WPF, phương tiện này sinh các đoạn diễn đạt giao diện diễn đạt qua ngôn ngữ XAML. Thiết kế viên tiếp đến sẽ nhập đoạn bộc lộ XAML kia vào môi trường thiên nhiên lập trình, ví dụ điển hình như Microsoft Visual Studio.

Thay bởi lập trình viên nên tái tạo nên lại giao diện từ đầu dựa bên trên một ảnh tĩnh mà người xây dựng cung cấp, bạn dạng thân những đoạn XAML này sẽ tiến hành Microsoft Visual Studio biên dịch để tái tạo thành giao diện bối cảnh đúng theo mô tả. Lập trình sẵn viên chỉ triệu tập vào vấn đề viết mã trình mang lại giao diện được sinh ra, ví dụ như xử lý các sự kiện, theo những công dụng đề ra của ứng dụng.

Việc chất nhận được người thiết kế và lập trình sẵn viên thao tác chung vậy nên sẽ tiêu giảm những lỗi phát sinh khi hiện tại hóa hình ảnh từ thiết kế. Cung ứng đó, nó còn được cho phép hai nhóm công tác này làm việc tuy nhiên song, khiến cho mỗi cách lặp trong các bước phát triển ứng dụng ngắn đi và việc phản hồi được tốt hơn. Vị cả hai môi trường đều có công dụng hiểu và áp dụng XAML, vận dụng WPF hoàn toàn có thể chuyển qua lại thân hai môi trường thiên nhiên phát triển nhằm sửa thay đổi hay bổ sung giao diện. Với toàn bộ những lợi điểm này, vai trò của người kiến tạo trong câu hỏi xây dựng hình ảnh được để lên hàng đầu.

4. Technology chung cho bối cảnh trên Windows với trên trình cẩn thận Web

Trong thời đại bùng phát của Internet, các ứng dụng Web ngày một phát triển. Vấn đề trang bị giao diện người tiêu dùng với không thiếu tính năng như một ứng dụng desktop sẽ thu hút không ít người sử dụng;, và do đó đóng góp phần làm tăng giá trị doanh nghiệp. Tuy nhiên, như đã nêu trong phần đầu, với hầu như công nghệ truyền thống, để phát triển một giao diện đồ họa vừa vận động trên desktop vừa trên trình săn sóc Web, đòi hỏi phải thực hiện những công nghệ hoàn toàn không giống nhau, giống như việc kiến tạo hai đồ họa hoàn toàn độc lập. Điều này chế tác ra chi phí không quan trọng để cải tiến và phát triển giao diện.

Xem thêm: Khái Quát Về Hệ Thống Pháp Luật Common Law Là Gì, Please Wait

WPF là một phương án cho vụ việc này. Xây dựng viên hoàn toàn có thể tạo ra một ứng dụng trình duyệt XAML (XBAP) thực hiện WPF chạy xe trên Internet Explore. Bên trên thực tế, thuộc đoạn code này có thể được dùng nhằm sinh ứng dụng WPF chạy tự do trên Windows. Hình 01 minh họa một ứng dụng dịch vụ thương mại tài chính vận động như một vận dụng WPF độc lập. Trong lúc đó, hình 02 minh họa đồ họa của cùng ứng dụng chạy xe trên Internet Explore bên dưới dạng XBAP.