Tạo một ứng dụng trên Windows. Viết ứng dụng Windows phổ quát đầu tiên

Chào mọi người! Có lẽ bạn đã nghe tin rằng trong 4 tuần đầu tiên Hơn 75 triệu người đã cài đặt Windows 10. Trong bối cảnh này, chúng tôi đặc biệt vui mừng được chia sẻ với bạn bài viết giới thiệu của Arseny Pechenkin từ DataArt về cách bắt đầu phát triển mười ứng dụng hàng đầu.

Đối với những người không chắc chắn có nên cài đặt Windows 10 trên máy yêu thích của mình hay không, chúng tôi khuyên bạn nên Đánh giá ngắn tài liệu về nền tảng, công cụ phát triển và các tính năng mới có sẵn khi phát triển ứng dụng.

Tôi nghĩ mọi người đều đã biết nơi và cách lấy bản sao Windows 10 của mình - chúng tôi sẽ không nói nhiều về điểm này. Việc cài đặt được thực hiện tương tự cài đặt Windows 8. Nếu bạn định cập nhật hệ thống, tôi thực sự khuyên bạn nên thực hiện tập tin sao lưu từ đĩa hệ thống.

Công cụ

Tôi có thể sử dụng những công cụ phát triển nào? Bạn sẽ cần một MS Visual Studio 2015 mới. Phiên bản miễn phí hiện có sẵn Visual Studio Phiên bản cộng đồng 2015 và các phiên bản Chuyên nghiệp và Doanh nghiệp trả phí.

Cách đây một thời gian, hầu hết tất cả các phần về phát triển cho Windows 10 đều dẫn đến các phần về phát triển cho Windows 8.1, nhưng sau khi phát hành, tài liệu này sẽ dần được cập nhật (có tính đến thực tế là nền tảng UWP cho Windows 10 là sự phát triển của WinRT).

Khóa học trực tuyến tại Microsoft Virtual Academy

Đối với những người thích định dạng nghe nhìn để tìm hiểu nền tảng này, có một khóa học giới thiệu: Hướng dẫn dành cho nhà phát triển về Windows 10.

Khóa học bao gồm các tính năng chính của nền tảng, mô hình và công cụ có sẵn để tạo ứng dụng Windows. Một số kịch bản cơ bản được triển khai trong ứng dụng được xem xét: làm việc với lượng bộ nhớ nhỏ, thực thi tác vụ ở chế độ nền, giao tiếp giữa các thiết bị, quản lý tệp và dữ liệu cũng như các phương thức tương tác của người dùng.

Mở khóa giấy phép và thiết bị

Giống như việc phát triển cho Windows 8/8.1, sẽ cần có giấy phép nhà phát triển. Điều này tương tự như Giấy phép dành cho nhà phát triển Windows 8/8.1 khi bạn tạo dự án đầu tiên của mình trực tiếp trong Visual Studio (điều này không giống với tài khoản xuất bản trên cửa hàng). Để cài đặt ứng dụng trên thiết bị của bạn, đừng quên mở khóa chúng:

Ứng dụng phổ quát

Có gì mới cho nhà phát triển? Đã có thông báo rằng ứng dụng phổ quát này có thể chạy trên mọi nền tảng Windows 10. Điều này được triển khai thông qua một hệ thống gồm nhiều API khác nhau. Tức là có một lớp API chung cho tất cả các nền tảng (Universal Windows Platform, UWP). Nếu ứng dụng chỉ sử dụng các khả năng của nó, nó sẽ hoạt động trên tất cả các nền tảng có UWP.

Nếu bạn cần sử dụng các khả năng nền tảng cụ thể (ví dụ: làm việc với các nút phần cứng trên điện thoại thông minh), thì bạn có thể sử dụng các API tương ứng thông qua tiện ích mở rộng nền tảng. Chức năng này sẽ chỉ hoạt động trên các nền tảng có các API này, vì vậy, việc kiểm tra tính khả dụng của các phương thức và lớp tương ứng cần được tích hợp vào mã.

Mẫu

Khi sử dụng Visual Studio, chúng tôi chỉ có quyền truy cập vào một mẫu dự án, Ứng dụng trống.

Đây là một dự án dành cho một trang ứng dụng Universal Windows không có các phần tử được xác định trước quản lý và cơ cấu.
Ngoại trừ mẫu chuẩn, bạn có thể tìm thấy các mẫu từ cộng đồng nhà phát triển.

Bộ sưu tập hiện bao gồm các mẫu dự án sau:

  • Ứng dụng trống, một dự án XAML một trang cơ bản. Tương tự như Ứng dụng trống tiêu chuẩn có trong SDK Windows 10, nhưng không có phép đo từ xa Thông tin chi tiết về ứng dụng.
  • Ứng dụng SplitView, một dự án ứng dụng nhiều trang có khả năng điều khiển SplitView thích ứng.
  • Ứng dụng Composition, một dự án không sử dụng thư viện thành phần tiêu chuẩn mà sử dụng API Windows.UI.Composition,
  • Ứng dụng Composition XAML, một dự án sử dụng XAML và API Windows.UI.Composition.

Ví dụ

Để giúp đăng nhập vào nền tảng UWP dễ dàng hơn, Microsoft đã chuẩn bị một bộ sưu tập ví dụ ngày càng tăng:

Trong hộp thoại New Project Visual Studio, chọn Visual C#, Silverlight cho Điện thoại Windows và một mẫu Ứng dụng Windows Phone đơn giản và hãy gọi nó là ExploringXAMLFeatures.

Trong hộp thoại chọn mục tiêu hệ điều hành chọn hệ điều hành Windows Phone 7.1

Sau khi tạo dự án, cửa sổ Visual Studio sẽ có dạng như sau:

Hãy xem cấu trúc dự án trong cửa sổ Solution Explorer:

Tên tập tin Mục đích
AppManifest.xmlCần có tệp kê khai để tạo tập tin XAP, đóng gói ứng dụng để triển khai trên điện thoại.
HộiInfo.csMột tệp cấu hình khác xác định một số siêu dữ liệu của Hội chính của ứng dụng.
WMAppManifest.xmlTệp siêu dữ liệu chứa nhiều cài đặt ứng dụng khác nhau: tiêu đề, cài đặt trang đầu tiên, đường dẫn đến biểu tượng, xác định các thông tin cần thiết khả năng hệ thống vân vân.
Ứng dụng.xamlĐây là tập tin tài nguyên ứng dụng. Đây là vị trí tài nguyên toàn cầu(điều này sẽ được thảo luận khi sử dụng kiểu) hoặc các sự kiện chung (xảy ra khi ứng dụng khởi động). Tập tin này cũng là điểm vào của ứng dụng.
Ứng dụng.xaml.csTệp mã (mã phía sau) cho App.xaml. Tại đây, bạn có thể xử lý các sự kiện và lỗi ở cấp ứng dụng, bao gồm cả việc chôn vùi ứng dụng. Khái niệm này sẽ được đề cập sau khi thực hiện đa nhiệm.
ApplicationIcon.pngHình ảnh sẽ là biểu tượng ứng dụng trên điện thoại. Nó thực sự tập tin quan trọng, vì đây là thứ đầu tiên người dùng sẽ nhìn thấy khi làm việc với ứng dụng.
Background.pngHình ảnh này được sử dụng khi ứng dụng được ghim vào màn hình bắt đầuđiện thoại (màn hình bắt đầu). Về cơ bản điều này biểu tượng lớn các ứng dụng. Sẽ rất hợp lý khi làm cho nó trông giống với ApplicationIcon.png.
MainPage.xamlĐây là một phần của mẫu ứng dụng đã chọn. MainPaige không phải là một cái tên hay lắm, nhưng đó là tên mà mẫu dự án mặc định sử dụng. Trang này thể hiện giao diện mà người dùng nhìn thấy khi khởi động ứng dụng.
MainPage.xaml.csTệp mã trang MainPage.xaml.
SplashScreenImage.jpgHình ảnh này được hiển thị trong khi ứng dụng đang tải. Bạn có thể đặt hình ảnh động của riêng mình để thông báo rằng ứng dụng đang tải. Có một kỹ thuật tạo các trang tải rất động trong XNA, nhưng nó nằm ngoài phạm vi của loạt bài viết này.

Các tệp XAML xác định giao diện của ứng dụng. Thực ra nó đơn giản Tệp XML với ngôn ngữ đánh dấu XAML.

Mặc dù đây là dự án đơn giản nhất nhưng nó chứa tất cả các thành phần chính mà tất cả các mẫu và loại dự án khác đều có.

Xin lưu ý rằng một số cài đặt được trình bày trong biểu mẫu tập tin cấu hình, có thể được chỉnh sửa trong giao diện trực quan để chỉnh sửa cài đặt ứng dụng.

Thêm điều khiển vào trang XAML

Lưu ý rằng Visual Studio hiển thị cả thiết kế và XAML của trang theo mặc định.

Nếu bạn đi xem các tệp giải pháp khác, nhấn đúp chuộtđi tới tệp MainPage.xaml.

Trong mã XAML của tệp MainPage.xaml, bên trong phần tử Lưới có tên ContentPanel, hãy chèn điều khiển Nút:

Trong cửa sổ thiết kế, nút sẽ xuất hiện ngay ở khoảng giữa giao diện. Chú ý đến thuộc tính Tên? Đây là mã định danh duy nhất của phần tử, giúp bạn tham chiếu nó trong mã. Hãy coi đây là thuộc tính ID của điều khiển. Bây giờ chúng ta hãy thêm một số hành động khi nút này được nhấp vào. Có hai cách để liên kết một sự kiện với Nút (hoặc bất kỳ điều khiển nào khác). Trong XAML, ngay trong định nghĩa Nút, chúng ta có thể thêm thuộc tính Click và InteliSense sẽ tự động hỏi xem chúng ta có muốn tạo một trình xử lý sự kiện mới hay không:

Bạn có thể liên kết trình xử lý sự kiện trực tiếp trong mã trang Home.xaml.cs mà không cần chỉ định nó trong tệp XAML:

Public MainPage() ( Khởi tạoComponent(); MyButton.Click +=new RoutedEventHandler(MyButton_Click); )

Cả hai phương pháp đều hoạt động. Bạn có thể sử dụng bất kỳ trong số họ. Để đơn giản, chúng tôi sẽ sử dụng định nghĩa phương thức XAML ở đây. Bây giờ bạn có thể viết mã được quản lý trong hàm MyButton_Click để thay đổi giao diện hoặc gọi các hàm khác. Hãy hoàn thành ứng dụng ví dụ của chúng tôi bằng cách thêm mã sẽ thay đổi văn bản trong TextBlock PageTitle (PageTitle là Tên, vì vậy bạn có thể tham chiếu trực tiếp nó trong mã) thành "hello wp7". Để thực hiện việc này, hãy thêm mã sau vào hàm:

Khoảng trống riêng tư MyButton_Click(người gửi đối tượng, RoutedEventArgs e) ( PageTitle.Text = "hello wp7"; )

Chọn trong cài đặt dự án Thiết bị Windows Giả lập

Và khởi chạy ứng dụng bằng cách nhấp vào hình tam giác màu xanh lá cây hoặc nút F5. Sau khi khởi chạy ứng dụng và nhấp vào nút “Press Me”, màn hình sẽ trông giống như ảnh chụp màn hình bên dưới:

Thêm trang mới vào dự án

Chỉ ứng dụng đơn giản nhất bao gồm một trang. Chúng tôi muốn tìm hiểu cách viết các ứng dụng nhiều trang phức tạp. Chúng ta có thể sử dụng các mẫu Pivot, Toàn cảnh, có thể sử dụng mẫu thiết kế MVVM (Model-View-ViewModel) và trước tiên, chúng ta sẽ tìm hiểu cách thêm các trang mới vào dự án và di chuyển giữa chúng.

Trong cửa sổ Solution Explorer, nhấp vào click chuột phải di chuột qua tên dự án và trong menu xuất hiện, chọn Thêm, sau đó chọn Mục mới, trong hộp thoại mở ra, chọn Trang chân dung Windows Phone và đặt tên là SecondPage.xaml:

Bây giờ chúng ta có một trang XAML trống, bản sao chính xác Trang MainPage.xaml trước khi chúng tôi chỉnh sửa nó.

Để phân biệt rõ hơn giữa các trang, chúng ta vào code XAML của trang SecondPage và chỉnh sửa phần tử TextBlock với Name PageTitle Thuộc tính văn bản như sau:

Điều hướng giữa các trang ứng dụng

Vì vậy, chúng ta có hai trang trong dự án, khi ứng dụng khởi động, trang MainPage.xaml sẽ được hiển thị. Làm cách nào bây giờ tôi có thể chuyển từ MainPage.xaml sang SecondPage.xaml?

Hãy thử hai cách đơn giản để làm điều này.

Trong mã XAML của tệp MainPage.xaml sau mã Nút mà chúng tôi đã thêm trước đó, hãy thêm mã HyperlinkButton như hiển thị bên dưới: