1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.

98 1,3K 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 98
Dung lượng 2,6 MB

Nội dung

Cách dễ dàng nhất để giới thiệu Smart Device Extensions là bằng ví dụ. Chúng ta sẽ tạo ra một chương trình ứng dụng đơn giản có tên là “Hello World” bằng ngôn ngữ C#.

Trang 1

Tìm hiểu về công nghệ NET Compact Framework và lập trình ứng dụng trên Pocket PC.

Mục Lục

Lời Nói Đầu:

Chương 1 : Thiết lập môi trường phát triển ứng dụng

1.1 Smart Device Extension và NET Compact Framework 1.2 Những thiết bị phi chuẩn

Chương 2:Thiết kế những ứng dụng GUI băng Windows Forms.

2.1 Tìm hiểu những điều khiển không được hỗ trợ trong NET Compact Framework2.2 Những hàm System.Windows.Forms không được hỗ trợ trong NET Compact Framework

2.3 Làm việc với cửa sổ Form Designer của Visual Studio NET 2.4 Tìm hiểu về các nền tảng khác nhau của Windows Forms 2.5 Làm việc với Control của Form

2.6 Điều khiển Button

2.7 Sử dụng điều khiển TextBox 2.8 Sử dụng điều khiển Label 2.9 Điều khiển RadioButton

2.10 Sử dụng điều khiển CheckBox 2.11 Sử dụng điều khiển ComboBox2.12 Sử dụng điều khiển ListBox 2.13 Các điều khiển khác

Chương 3: Tìm hiểu ADO.NET trên NET Compact Framework

3.1 Giới thiệu ADO.NET trên NET Compact Framework 3.2 Lưu dữ liệu với DataSet

3.3 Tìm hiểu về các ràng buộc dữ liệu

3.4 Thiết lập cho các trường tự động tăng giá trị 3.5 Mô hình dữ liệu quan hệ với DataSet

3.6 Tạo các khung ràng buộc của dữ liệu với một DataView

Chương 4: Lập trình với Microsoft SQL Server CE

4.1 Tìm hiểu các tính chất hỗ trợ bởi Microsoft SQL Server 2000 Windows CE Edition

4.2 Tạo CSDL Microsoft SQL Server CE

4.3 Thêm cấu trúc vào một CSDL Microsoft SQL Server CE 4.4 Lưu trữ (Populating) CSDL Microsoft SQL Server CE4.5 Lấy dữ liệu bằng SqlCeDataReader

Trang 2

Mục Lục

Lời Nói Đầu: 2

-Chương 1 : Thiết lập môi trường phát triển ứng dụng 2

1.1 Smart Device Extension và NET Compact Framework 2

1.2 Những thiết bị phi chuẩn 13

-Chương 2:Thiết kế những ứng dụng GUI băng Windows Forms. 15

-2.1 Tìm hiểu những điều khiển không được hỗ trợ trong NET Compact Framework - 15 -

2.2 Những hàm System.Windows.Forms không được hỗ trợ trong NET Compact Framework - 16 -

2.3 Làm việc với cửa sổ Form Designer của Visual Studio NET 16

2.4 Tìm hiểu về các nền tảng khác nhau của Windows Forms 20

2.5 Làm việc với Control của Form 22

2.6 Điều khiển Button 24

2.7 Sử dụng điều khiển TextBox 25

2.8 Sử dụng điều khiển Label 26

2.9 Điều khiển RadioButton 26

2.10 Sử dụng điều khiển CheckBox 27

2.11 Sử dụng điều khiển ComboBox 28

2.12 Sử dụng điều khiển ListBox 31

2.13 Các điều khiển khác 32

-Chương 3: Tìm hiểu ADO.NET trên NET Compact Framework 60

3.1 Giới thiệu ADO.NET trên NET Compact Framework 60

3.2 Lưu dữ liệu với DataSet 60

Trang 3

3.3 Tìm hiểu về các ràng buộc dữ liệu 65

3.4 Thiết lập cho các trường tự động tăng giá trị 67

3.5 Mô hình dữ liệu quan hệ với DataSet 68

3.6 Tạo các khung ràng buộc của dữ liệu với một DataView 73

-Chương 4: Lập trình với Microsoft SQL Server CE 77

-4.1 Tìm hiểu các tính chất hỗ trợ bởi Microsoft SQL Server 2000 Windows CE Edition - 77 -

4.2 Tạo CSDL Microsoft SQL Server CE 77

4.3 Thêm cấu trúc vào một CSDL Microsoft SQL Server CE 78

4.4 Lưu trữ (Populating) CSDL Microsoft SQL Server CE 83

4.5 Lấy dữ liệu bằng SqlCeDataReader 84

4.6 Lọc một DataSet bằng SqlCeDataAdapter 89

4.7 Cập nhật CSDL Microsoft SQL Server CE sử dụng SqlCeDataAdapter 91

4.8 Đối tượng SqlCommand với SqlCeCommandBuilder 92

-Chương 5: Tài Liệu Tham Khảo 94

-Lời Nói Đầu

Như chúng ta thấy, hiện nay các thiết bị di động ngày càng trở nên đa dạng và rấtphong phú, nó bao gồm rất nhiều loại máy tính xách tay và các loại máy điện thoại diđộng khác nhau Những chiếc máy tính xách tay hay những chiếc điện thoại di động đangngày càng trở nên rẻ hơn, thiết kế cải tiến hơn, kiểu dáng nhỏ gọn và đẹp mắt hơn, chúngcó nhiều tính năng tiện dụng hơn Những thiết bị di động đang trở nên càng ngày càng lôicuốn nhiều công ty và cá nhân sử dụng hơn Mặt khác những thiết bị này rất hữu dụng vàtiện lợi Cũng chính vì nhu cầu đó, việc phát triển phần mềm để chạy trên những thiết bịdi động này cũng ngày càng yêu cầu những kỹ thuật đặc biệt hơn

Sự phát triển những ứng dụng cho các thiết bị di động sẽ cần đến những kỹ năngđặc biệt Những thiết bị cầm tay ngày càng được thiết kế với kích thước nhỏ gọn, xâydựng những ứng dụng tốt hơn, phù hợp với nhu cầu tự nhiên của con người Vì vậy,với NET Compact Framework và Smart Device Extensions (SDE) của Visual StudioNET, Microsoft đã cung cấp một kỹ thuật phát triển phần mềm thích hợp cho các loạithiết bị di động và những người thiết kế các thiết bị di động Và sau đây ta sẽ tìm hiểuvề NET Compact Framework và Smart Device Extensions.

Tìm hiểu về công nghệ NET Compact Framework vàlập trình ứng dụng trên Pocket PC.

Sau đây chúng ta sẽ tìm hiểu về công nghệ NET Compact Framework và lậptrình ứng dụng trên Pocket PC trên nền Windows mobile Trong tài liệu này, các ví dụ

được triển khai bằng ngôn ngữ lập trình C#, trong Visual Studio.NET 2003.

Trang 4

Chương 1 : Thiết lập môi trường phát triển ứng dụng

1.1 Smart Device Extension và NET Compact Framework

1.1.1 Giới thiệu về NET Compact Framework

- .NET Compact Framework là nền tảng dữ liệu cho các ứng dụng VisualStudio NET được phát triển cho các thiết bị di động sử dụng hệ điều hành Windows CEhoặc Windows Mobile

- NET Compact Framework là một thư viện lớp phong phú, cung cấp một APIđồng dạng mà những người phát triển có thể dung cả C#, Visual Basic NET, và cả nhữngngôn ngữ trong tương lai sẽ được hỗ trợ NET Compact Framework

- NET Compact Framework gồm những lớp truy nhập dữ liệu rất đa dạng vàrộng, những lớp thao tác XML, có một tập hợp những kiểu dữ liệu cơ bản phong phú, cósự hỗ trợ nối mạng dễ sử dụng hơn, và v v…

- NET Compact Framework 2.0 là nền tảng cho 1 số ứng dụng cho PPC đượcphát triễn trên code Visual Studio NET

NET Compact Framework là một phiên bản thu nhỏ của NET Framework đượcsử dụng để tạo, xây dựng, gỡ lỗi và triển khai các ứng dụng chạy trên NET CompactFramework trong các PDA, điện thoại di động và các thiết bị thông minh khác NETCompact Framework sử dụng một số những thư viện lớp thông thường giống như NETFramework và ngoài ra còn sử dụng một vài thư viện được thiết kế đặc biệt dành chonhững thiết bị di động như Windows CE InputPanel.

.NET Compact Framework là nền tảng của Microsoft để phát triển các ứng dụngdi động, hỗ trợ khả năng khai thác sức mạnh của các dịch vụ web trên thiết bị di động.Ngoài ra, lập trình viên có thể tận dụng những tính năng cao cấp của Visual Studio"Everett" để xây dựng các ứng dụng hữu ích cho doanh nghiệp một cách nhanh chóng.Smart Device Extensions, một phần mở rộng cho IDE của Visual Studio NET, cung cấpcác chức năng giúp đơn giản hoá việc lập trình ứng dụng di động.

Sự khác nhau giữa NET Compact Framework và NET Framework: NET

Compact Framework là một phiên bản thu nhỏ của NET Framework .NET CompactFramework và NET Framework, tuy cả 2 đều là nền tảng của Visual Studio NET,nhưng:

*.NET Compact Framework: phát triển chủ yếu cho các ứng dụng của WindowsMobile Khi cài đặt NET Compact Framework (phiên bản giành cho Windows) thìchương trình cũng sẽ tự động cập nhật phiên bản mới cho điện thoại (nếu phiên bản càiđặt là bản mới hơn bản được tích hợp sẵn của hệ điều hành WM) Và NET compactframwork cho Pocket PC giới hạn hơn và chỉ có khoảng 2.5 M

* NET Framework là nền tảng phát triển các ứng dụng cho PC.

Trang 5

1.1.2 Những yêu cầu về hệ thống.

Smart Devices Extensions (Mở rộng những thiết bị thông minh) là môi trườngphát triển tích hợp (IDE) thông qua mục đích của những người thiết kế NET CompactFramework Nó bao gồm phiên bản Visual Studio NET 7.1 hoặc các phiên bản về sau,Enterprise Developer và Enterprise Architect Editions Để chạy Visual Studio NET 7.1Enterprise Developer hay Enterprise Architect, bạn cần một hệ thống máy tính với nhữngyêu cầu tối thiểu được phác thảo trong bảng 1.1.

Bảng 1.1 Những yêu cầu hệ thống trong Visual Studio NET 2003

Operatingsystem and

ActiveSync 3.5 hoặc lớn hơn

Ngoài ra, ta cần có một thiết bị được hỗ trợ để chạy những chương trình .NETCompact Framework tương thích với mọi thiết bị có khả năng chạy hệ điều hành PocketPC

Việc truy nhập Smart Device Extensions xảy ra tự động khi bạn tạo ra một ứngdụng mới cho một Pocket PC hay thiết bị Windows CE hoặc khi bạn mở một Pocket PCđược tạo ra trước đó hay một ứng dụng Windows CE

1.1.3 Sử dụng Smart Device Extensions

Cách đơn giản nhất để phát triển NET Compact Framework là sử dụng SmartDevice Extensions (những mở rộng thiết bị thông minh) trong Visual Studio NET 7.1.Để đơn giản cho một mở rộng của Visual Studio 7.1, thì Smart Device Extensions giớithiệu những kiểu dự án mới, cho phép chúng ta chạy trên Windows CE, những Thiết bị

Trang 6

hỗ trợ NET Compact Framework, như Pocket PC Điều này có nghĩa là sử dụng SmartDevice Extensions để phát triển những ứng dụng cho Windows CE dễ dàng như việc pháttriển những ứng dụng cho Windows 2000 hay XP Nếu bạn đã làm một ứng dụng bằngviệc sử dụng những phiên bản trước đây của Visual Basic, thì bạn cũng không phải lolắng gì với Smart Device Extensions của Visual Studio Smart Device Extensions đủthông minh để biên dịch ứng dụng của bạn

1.1.4 Tạo một ứng dụng mới cho những thiết bị Pocket PC

Cách dễ dàng nhất để giới thiệu Smart Device Extensions là bằng ví dụ Chúng tasẽ tạo ra một chương trình ứng dụng đơn giản có tên là “Hello World” bằng ngôn ngữC# Chúng ta sẽ thực hiện theo những bước sau:

- Bước 1: Khi Visual Studio NET bắt đầu chạy, nó sẽ hiển thị một của sổ StartPage, như hình 1 Để tạo ra một ứng dụng mới, bạn kích vào nút New Project nằm ở gầnđáy của màn hình; Ta sử dụng thực đơn kéo xuống bằng việc lựa chọn File -> New->,Project; hay sử dụng tổ hợp phím bấm Ctrl+ Shift+ N.

Hình 1: Của sổ Start Page hiển thị khi khởi động chương trình Visual Studio.

- Bước 2: Sau khi chúng ta kích vào New Project, một hộp thoại hiện ra, nó hiểnthị kiểu của project Chúng ta chọn thư mục Visual Basic Projects và mẫu Smart

Trang 7

Device Application, như hình 2 Bạn sẽ đặt một tên và chỉ vị trí để lưu ứng dụngmới và tiếp theo là kích nút OK.

Hình 2: Hộp thoại tạo một Visual Basic Smart Device Application

- Bước 3: Hộp thoại tiếp theo, như hình 3

Trang 8

Hình 3: chọn một nền đích và một mẫu ứng dụng

- Bước 4: Sau khi chúng ta đã lựa chọn như hình 3 và kích OK, Visual Studio tựđộng kích hoạt Smart Device Extensions và đưa ra những trình thiết kế mẫu, như hình 4.

Trang 9

Hình 1.5: Trình thiết kế Forms hiện ra sau khi một dự án được tạo.

- Bước 5: Bên trái của khung thiết kế Forms là một nút nhỏ có tên là Toolbox.Việc kích nút này sẽ đưa ra hộp Toolbox, như được minh hoạ trong hình 5.

Trang 10

Hình 5: Hiển thị hộp ToolBox.

- Bước 6: Mỗi mục trong Toolbox là một điều khiển sẵn có để những người thiếtkế dùng trong NET Compact Framework Hầu hết điều khiển đều có liên quan đếnWinforms Cho hướng dẫn này, chúng ta sẽ lựa chọn một TextBox, kéo nó lên Form, vàtiếp theo, lại lựa chọn một Button và kéo nó lên Form Hình 6 cho thấy kết quả.

Trang 11

Hình 6: Hiển thị kết quả sau khi kéo TextBox và Button vào Form

-Bước 7: Bây giờ ta kích kép vào nút Button1, và IDE đưa ra code với con trỏ

nhấp nháy ở ngay phương thức Button1_click Bất cứ code nào được nhập vào đều được

thực hiện khi ta kích vào nút Button1 Bây giờ chúng ta sẽ nhập một vài code VisualBasic như hình 7.

Trang 12

Hình 7: Hiển thị code sau khi kích vào nút button trên Form

- Bước 8 Cách làm này rất giống cách làm cho máy để bàn, và nó là điểm củaSmart Device Extensions và NET Compact Framework Dự án lúc này đã sẵn sàng đểbiên dich và chạy trên thiết bị Để chạy ứng dụng trên thiết bị, chọn Debug, Start WithoutDebugging Đầu tiên Visual Studio sẽ biên dịch mã nguồn và sau đó đưa ra hộp thoạiDeploy Smart Device Application, như trong hình 8.

Trang 13

Hình 8: Trước khi triển khai một ứng dụng cho một thiết bị,Visual Studio cho thấy hộp thoại triển khai.

-Bước 9: Ta sẽ chọn một trong các bộ mô phỏng có trong hình 8 để chạy ứngdụng Trong ứng dụng này ta chọn Pocket PC 2002 Emulator Nếu muốn chạy thử trêncác thiết bị thực, chúng ta chọn Pocket PC Device nhưng phải đảm bảo rằng thiết bị đãđược kết nối thông qua đường ActiveSyne trước khi triển khai ứng dụng trên thiết bị Sauđó chọn Deploy.

- Bước 10: Visual Studio cài đặt NET Compact Framework và khởi chạy ứngdụng của bạn trên thiết bị Nếu bạn kích vào nút Button, bạn sẽ nhìn thấy kết quả của ứngdụng như hình 9.

Trang 14

Hình 9: Thiết bị mô phỏng chạy ứng dụng Hello World.

1.2 Những thiết bị phi chuẩn

.NET Compact Framework có thể chạy trên rất nhiều các thiết bị phần cứng chạyhệ điều hành Windows CE Bảng 1.2 cho chúng ta thấy các bộ xử lý được hỗ trợbởi NET Compact Framework và các hệ điều hành hỗ trợ cho các bộ xử lý.

.NET Compact Framework được lưu trữ như một file CAB trên Desktop Chỉ cómột file CAB duy nhất cho mỗi hệ điều hành và kiểu bộ xử lý mà NET CompactFramework hỗ trợ Smart Device Extensions đưa file CAB phù hợp vào thiết bị khi nóxác định thiết bị không cài đặt NET Compact Framework.

Trang 15

Tên CPUPhiên bản hệ điều hành hỗ trợ

Intel ARM 4 Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

Intel ARM 4i Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

Hitachi SH3 Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

Hitachi SH4 Pocket PC 2003 and WinCE 4.1 hoặc mới hơn

Intel 80x86 Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

MIPS 16 Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

MIPS II Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

MIPS IV Pocket PC 2000, 2002, 2003, and WinCE 4.1 hoặc mới hơn

Bảng 1.2: Bộ xử lý và hệ điều hành được hỗ trợ bởi NET Compact Framework

Tất cả các thiết bị Pocket PC chạy hệ điều hành Pocket PC version 2003 hoặc mớihơn đều có NET Compact Framework trong ROM Nếu chúng ta không thể triển khaihoặc gỡ lỗi ứng dụng trên các thiết bị, trong phần này chúng ta sẽ học cách làm thế nàođể Smart Device Extensions kết nối với các thiết bị để gỡ lỗi, triển khai và thảo luân mộtvài vấn đề liên quan Có ba mức hỗ trợ phi chuẩn:

- Hỗ trợ đầy đủ triển khai và gỡ lỗi thông thường, mức hỗ trợ này có nghĩa rằngIDE có thể triển khai hệ nhị phân tới thiết bị và gỡ lỗi mã nguồn đang chạy trên thiết bị.

- Chỉ hỗ trợ triển khai: có nghĩa rằng IDE có thể chỉ triển khai hệ nhị phân tớithiết bị nhưng không thể gỡ lỗi mã chạy trên thiết bị được.

- Chỉ hỗ trợ đích (Target) Mức hỗ trợ này có nghĩa là chúng ta có thể phát triểnứng dụng của chúng ta trong Visual Studio, nhưng chúng ta phải cài đặt CompactFramework trên thiết bị và sao chép vào thiết bị

* Kết nối Visual Studio với các thiết bị

Để thiết lập giao tiếp Visual Studio với thiết bị, chúng ta làm theo các bước sau:

Trang 16

+ Bước 1: chọn Tools -> Options trong Visual Studio.

+ Bước 2: kích đúp trên mục Device Tools và chọn Devices Xem hình 10

Hình 10: Sử dụng hộp thoại kết nối thiết bị để chọn kiểu thiết bị muốn kết nối.

+ Bước 3: Chọn nền tảng Pocket PC hay Windows CE.

+ Bước 4: Chọn kiểu thiết bị mà chúng ta muốn triển khai ứng dụng trên đó Hình 10 cho

phép chọn Emulator hoặc thiết bị Pocket PC.

+ Bước 5: Lựa chọn cách thức truyền tin được dụng Thiết bị Pocket PC có hai lựa chọn

+ Bước 6: Nếu chọn TCP Connect Transport, sau đó chúng ta có thể thay đổi bằng cách

chọn nút Configure…sau đó sẽ nhận được như hình 11.

Trang 17

Hình 11: TCP Connect Transport cho phép thiết lập kết nối tới thiết bị TCP.

+ Bước 7: Hộp thoại như hình 11 cho phép chúng ta thiết lập địa chỉ IP cho thiết bị Nếu

thiết bị nối kết bằng ActiveSyne, Visual Studio có thể tự động điều khiển nhận ra địa chỉ.Chúng ta có thể lựa chọn sử dụng số hiệu cổng khác với cổng 5656 Để không sử dụngcổng mặc định, bạn phải tự cấu hình ConmanClient.exe trên thiết bị.

Chương 2:Thiết kế những ứng dụng GUI băng WindowsForms.

.NET Compact Framework cung cấp rất nhiều chức năng để xây dựng giao diện đồhoạ cho ứng dụng của bạn Tuy nhiên, những chức năng này là chỉ một tập con của tậpcác chức năng mà NET Framework đã cung cấp Trước khi giới thiệu những điều khiểnmà NET Compact Framework hỗ trợ, thì chúng ta hãy tìm hiểu một số điều khiển mà nókhông hỗ trợ.

2.1 Tìm hiểu những điều khiển không được hỗ trợ trong NET Compact Framework

Danh sách sau đây chứa những control mà không được hỗ trợ trên NET CompactFramework.

Trang 18

 Drag and drop

 All printing capabilities

 Hosting ActiveX controls

2.3 Làm việc với cửa sổ Form Designer của Visual Studio NET

Trình thiết kế Form Visual Studio NET cho phép chúng ta thiết kế giao diệnngười dùng cho ứng dụng một cách trực quan bằng những điều khiển được kéo lên Formứng dụng Mỗi một control được kéo lên form, chúng ta có thể nhìn thấy và định vị trí

Trang 19

cho những control đó, và đặt những thuộc tính cho các control đó thông qua cửa sổProperties, và tạo ra những bộ xử lý sự kiện cho những sự kiện của những control.

2.3.1 Cửa sổ thiết kế Forms

Khi chúng ta tạo ra một dự án Smart Device Extension (SDE) mà là một ứngdụng Windows, thì Visual Studio NET sẽ mở dự án trong khung Designer Ngoài ra,chúng ta cũng có thể chọn Designer từ menu View để đưa dự án vào khung Designer.Form Designer thường là cửa sổ nằm ở giữa của môi trường Visual Studio NET Hình2.1 hiển thị Form Designer của một dự án SDE Pocket PC trong khung thiết kế Designer.

Chú ý thành phần mainMenu1 ở đáy của cửa sổ Designer

Hình 2.1: Khung Designer của SDE Pocket PC.

Chú ý: Khi Form Designer được sử dụng để xây dựng một ứng dụng, phương

thức InitializeComponent chứa đựng mã nguồn để xây dựng một giao diện người dùng

của ứng dụng Mã nguồn này có ảnh hưởng lớn đến quá trình thực thi nếu form củachúng ta chứa vài control được lồng vào nhau Chẳng hạn, nếu có một panel được đặt

Trang 20

trên một form và panel chứa vài control, thì panel cần phải được thêm vào form trước,sau đó những control sẽ được thêm vào panel

2.3.2 Cửa sổ ToolBox.

Cửa sổ ToolBox chứa tất cả những control của NET Compact Việc thêm mộtcontrol cho một ứng dụng ở thời điểm thiết kế rất dễ dàng, ta chỉ việc kéo control từ hộpToolBox và thả nó trên form của ứng dụng trong cửa sổ Form Designer Hình 2.2 minhhoạ ToolBox cho một dự án SDE Pocket PC.

Hình 2.2: Cửa sổ ToolBox của một dự án SDE Pocket PC.

2.3.3 Của sổ Properties

Cửa sổ Properties chứa tất cả những đặc tính của control hiện thời đang đượcchọn trong cửa sổ Form Designer Bạn có thể thay đổi những thuộc tính này bởi việc gõnhững giá trị vào trong điều khiển TextBox bên cạnh tên thuộc tính Nếu thuộc tính cómột số giới hạn giá trị, thì một cái hộp thả xuống được hiển thị bên cạnh tên thuộc tínhmà chứa những giá trị có thể xảy ra cho thuộc tính Cuối cùng, nếu giá trị của thuộc tínhlà một tập hợp của các đối tượng hay một đối tượng phức tạp, ở đó có thể là một dấu ba

Trang 21

chấm được định vị bên cạnh tên thuộc tính Việc kích vào dấu ba chấm này sẽ hiển thị ramột hộp thoại cho phép bạn tự nhập thêm giá trị của thuộc tính Hình 2.3 hiển thị cửa sổProperties khi một TextBox được lựa chọn.

Hình 2.3: Cửa sổ Properties của một điều khiển TextBox.

Adding Events Handlers (Thêm bộ xử lý sự kiện)

Khi một control được thao tác ở tại thời điểm đang thực thi, nó sẽ xuất hiện mộtsự kiện để thông báo ứng dụng mà trạng thái của điều khiển đang thay đổi Để xử lý mộtsự kiện được đưa ra bởi một control, đầu tiên bạn phải tạo ra một phương thức chứa mãđể thực hiện khi sự kiện được dùng Tiếp theo bạn gắn phương thức cho sự kiện đượccông bố của điều khiển Điều này có thể được làm thông qua cửa sổ Properties.

Của sổ Properties liệt kê những sự kiện mà được đưa ra bởi control Kích vào nútEvents tại vị trí gần trên cùng của cửa sổ Properties, nó sẽ liệt kê ra những sự kiện Hình2.4 hiển thị cửa sổ Properties, va nó đang hiển thị sự kiện của control Button.

Trang 22

Hình 2.4: Của sổ Properties hiển thị những sự kiện của control Button.

Ngoài ra, chúng ta cũng có thể thêm một sự kiện xử lý bằng cách kích đúp lêntên sự kiện Việc làm này sẽ chuyển dự án đến khung viết code Mã để viết bộ xử lý sựkiện cho control cũng tự động được phát sinh Chúng ta có thể tìm thấy mã này trongphương thức InitializeComponent của lớp Form của ứng dụng

2.4 Tìm hiểu về các nền tảng khác nhau của Windows Forms

Những dự án Smart Device Extensions (SDE) có thể chọn một trong hai hệ điềuhành: hệ điều hành Pocket PC hay là hệ điều hành Windows CE NET Hai nền tảng nàycó APIs giao diện người dùng khác nhau Một dự án SDE xử lý điều này bằng cách gọinhững thư viện khác nhau trên mỗi nền tảng.

2.4.1 Tìm hiểu những nền tảng Windows CE NET

Những dự án Windows CE NET cũng tương tự như những dự án ứng dụng NETFramework thông thường trên Windows Đầu tiên, khi mới bắt đầu tạo dự án thì trongform thiết kế có 3 nút, đó là: nút minimize, nút maximize và nút close xuất hiện trong cáihộp điều khiển của ứng dụng, chúng cũng giống như trong đối tượng Form của NETFramework Bạn có thể loại bỏ cái hộp điều khiển từ form bằng cách đặt thuộc tính của

Trang 23

ControlBox là false Bạn có thể loại bỏ nút minimize, và nút maximize bằng cách đặtthuộc tính của MinimizeBox và MaximizeBox là false

Khi một form ứng dụng của Windows CE NET được tạo ra bằng trình thiết kếVisual Studio NET, thì kích thước của nó được tự động đặt ra là 640 X 450 Bạn có thể

thay đổi thuộc tính size này nếu nó không thích hợp cho ứng dụng của bạn Mặc dù lớpform trình bày thuộc tính FormBorderSytle, nhưng việc đặt thuộc tính của Sizable sẽ

không ảnh hưởng đến đường viền của cửa sổ Trong Windows CE NET thì không có ứngdụng nào thay đổi kích thước Nó có thể chỉ thu nhỏ, làm phóng to cực đại màn hình, hay

là theo kích cỡ của thuộc tính size.

2.4.2 Tìm hiểu nền tảng Pocket PC

Những ứng dụng trên Pocket PC lệch xa hơn so với những dự án của ứng dụngWindows NET Framework thông thường Đầu tiên, khi mới bắt đầu tạo dự án một đốitương MainMenu luôn luôn được thêm vào một ứng dụng Pocket PC Bạn có thể loại bỏthực đơn này, nhưng việc làm này sẽ gây ra một ngoại lệ, và nó sẽ được đưa vào khitương tác với Soft Input Panel (SIP) SIP là một sự thi hành phần mềm của bàn phímQWERTY.

Cửa sổ ToolBox của Visual Studio NET chứa một điều khiển InputPanel Trên

Pocket PC, điều khiển này cho phép bạn tương tác với SIP InputPanel cho phép bạn tăngvà giảm SIP Ngoài ra, InputPanel sẽ thông báo cho ứng dụng của bạn khi SIP đã đượccho phép Một điều cần chú ý là form của bạn phải có một control MainMenu trên nó vàtrong control InputPanel để được thêm vào form Nếu không có control MainMenu trênform thì một ngoại lệ sẽ được đưa vào ở thời điểm đang chạy khi bạn cố gắng làm hiện rõInputPanel

Những ứng dụng Pocket PC phải bám sát vào những hướng dẫn và những nguyêntắc nhất định Nguyên tắc đầu tiên là chỉ có một trường hợp của một ứng dụng đang chạytại một thời điểm Ở ngay thời điểm chạy, NET Compact Framework sẽ bảo đảm chứcnăng này, như vậy không cần viết mã mà vẫn bảo đảm rằng chỉ một trường hợp của ứngdụng của bạn đang chạy.

Nguyên tắc thứ hai là mỗi một lần một ứng dụng đang chạy, người sử dụng khôngnên đóng ứng dụng lại Những trạng thái nguyên tắc mà ứng dụng cần phải lưu giữ bất kỳdữ liệu nào, giải thoát cho bất kỳ tài nguyên nào, và ngắt kết nối bất kỳ kết nối nào (ví dụnhư những kết nối cơ sở dữ liệu) khi nó ngừng hoạt động Nếu ứng dụng được bắt đầuchạy lần nữa, thì nó sẽ được kích hoạt bởi OS Khi nó được kích hoạt, ứng dụng cần phảicó những tài nguyên định vị đúng (reallocate resources) và reestablish (thiết lập chínhxác) bất kỳ kết nối nào Ứng dụng sẽ được thông báo khi nó được kích hoạt hay không

hoạt động bởi các sự kiện Form.Activate và Form.Deactivate Chú ý, những sự kiện

Trang 24

Activate và Deactivate không được liệt kê trong Properties Designer, vì vậy bạn phải tựviết và gán những sự kiện này

2.4.3 Kết hợp một Icon (biểu tượng) với ứng dụng

Một ứng dụng chưa thật sự hoàn thiện khi nó chưa có biểu tượng của nó Việc kếthợp một biểu tượng với một ứng dụng có thể được thông qua Visual Studio NET bằng

cách mở hộp thoại Property Pages dự án Sau đó lựa chọn General ở dưới folder CommonProperties Tiếp theo kích vào dấu ba chấm bên cạnh thuộc tính Application Icon Việc

này sẽ hiển thị OpenFileDialog Xác định vị trí biểu tượng trong hộp thoại

2.5 Làm việc với Control của Form.

Điều khiển Form là nơi chứa toàn bộ các điều khiển của ứng dụng Lớp form cóvài thuộc tính mà gây ra cho form hoạt động khác nhau phụ thuộc vào nền tảng đích.

2.5.1 Tìm hiểu tác động của thuộc tính FormBorderStyle

Thuộc tính FormBorderStyle xác định kiểu đường viền của Form Giá trị mặc

định cho đặc trưng này là FormBorderStyle.FixedSingle.

Trên Pocket PC, việc đặt thuộc tính cho FormBorderStyle.None tạo ra một formkhông có đường viền và không có thanh tiêu đề Kiểu này của form có thể được thay đổikích thước và di chuyển trong mã nhưng không phải bởi người sử dụng Đặt thuộc tínhFillBorderStyle.FixedSingle hay bất kỳ giá trị nào khác sẽ tạo ra một form mà chiếm toànmàn hình, và form sẽ không di chuyển hay thay đổi kích thước được.

Trên Windows CE .NET, đặt thuộc tính FormBorderStyle.FixedDialog hayFormBorderStyle.None sẽ tạo ra một form không có viền hay thanh tiêu đề Form sẽ dichuyển và thay đổi kích thước chỉ thông qua mã Đặt thuộc tínhFormBorderStyle.FixedSingle hay mọi giá trị khác sẽ tạo ra một form được đo cỡ cho

thuộc tính size với một đường viền và một thanh tiêu đề Form chỉ được thay đổi kích

thước hay di chuyển thông qua mã, và người sử dụng sẽ có khả năng để di chuyển form.

2.5.2 Sử dụng thuộc tính ControlBox

Thuộc tính ControlBox của form xác định xem hộp điều khiển có được hiển thịhay không Sự Thiết đặt thuộc tính ControlBox là true sẽ hiển thị hộp điều khiển Đặtthuộc tính là false thì sẽ ẩn hộp điều khiển đi.

2.5.3 Tìm hiểu các thuộc tính MinimizeBox và MaximizeBox

Trên Pocket PC thì hộp điều khiển chỉ chứa nhiều nhất một nút, hoặc là nútminimize có dán nhãn là X, hoặc là nút close gắn nhãn là OK Trên Windows CE NETthì hộp điều khiển có thể chứa cả ba nút: nút minimize, nút maximize, và nút close Tínhrõ ràng của những nút này được kiểm soát bởi những thuộc tính MinimizeBox vàMaximizeBox Bảng 2.1 mô tả những giá trị có thể xảy ra của thuộc tính MinimizeBox

Trang 25

và những tác dụng của chúng trên mỗi nền tảng đích Bảng 2.2 mô tả những thuộc tínhtương tự cho MaximizeBox

Bảng 2.1: Mô tả những giá trị có thể xảy ra của thuộc tính MinimizeBox và nhữngtác dụng của chúng trên mỗi nền tảng đích.

POCKET PCAPPLICATION

WINDOWS CE NETAPPLICATION

True Nút X (minimize) trongthanh tiêu đề

Nút minimize truyền thống củaWindows trong thanh tiêu đề

False Nut OK (close) trong thanhtiêu đề

Không có nút minimize trong thanhtiêu đề.

Bảng 2.2 mô tả những giá trị có thể xảy ra của thuộc tính MaximizeBox và nhữngtác dụng của chúng trên mỗi nền tảng đích.

POCKET PCAPPLICATION

WINDOWS CE NETAPPLICATION

True Không có tác dụng Nút maximize truyền thống củaWindows trong thanh tiêu đề.

False Không có tác dụng Không có nút maximize trong thanh tiêuđề.

2.5.4 Tìm hiểu thuộc tính WindowsState

Thuộc tính WindowsState xác định trạng thái hiện rõ ban đầu của cửa sổ Thuộctính này chỉ có thể được thiết lập cho FormWindowState.Normal hayFormWindowState.Maximized Bảng 2.3 mô tả giá trị và tác dụng của nó trên một ứngdụng được chạy trên cả hai nền tảng đích.

Trang 26

Bảng 2.3: Mô tả những giá trị có thể xảy ra của thuộc tính WindowState và nhữngtác dụng của chúng trên mỗi nền tảng đích.

MEMBER NAMEPOCKET PC APPLICATION

WINDOWSCE NETAPPLICATION

Normal Ứng dụng sẽ chiếm toàn bộ màn hìnhcủa desktop trừ một vùng của thanh

start menu và một vùng của thanhmain menu.

Ứng dụng có kíchthước theo thuộc tính

2.5.5 Tìm hiểu thuộc tính Size

Thuộc tính size xác định kích thước của cửa sổ ứng dụng Nó phụ thuộc vào giá

trị của thuộc tính FormBorderStyle, ứng dụng có thể lờ đi giá trị của thuộc tính size hoặclờ đi việc đưa ra cho ứng dụng một kích thước theo lý thuyết Trên Pocket PC, thì chỉ cóthuộc tính size hợp lệ mới được đánh giá, FormBorderStyle phải được thiết lập từFormBorderSytle.None Trên Windows CE, thuộc tính size luôn luôn được đánh giá.

2.5.6 Thiết đặt Location (vị trí) của Form bằng cách sử dụng thuộc tính Location.

Thuộc tính Location xác định vị trí ở góc trên, bên trái của của form Trên PocketPC thuộc tính Location không có tác dụng trừ khi thuộc tính FormBorderSytle thiết đặt làFormBorderSytle.None Trên Windows CE thì sự định vị của cửa sổ luôn luôn bằng nhauvề kích thước cho thuộc tính Location, trừ khi ứng dụng được đặt trong trạng tháiminimize hoặc maximize.

2.6 Điều khiển Button

Lớp System.Windows.Forms.Button là lớp thực hiện NET của một điều khiển

nút bấm Khi người sử dụng kích vào nút bấm bằng một cái bút, thì một sự kiện click

được xuất hiện Bạn có thể điều khiển sự kiện này bởi một phương thức (một lớp)delegate System.EventHandler Code dưới đây thực thi sự kiện EventHandler được hiểnthị ở ngay thời gian hiện tại.

Trang 27

Private void button_Click(object sender, System.EventArgs e) {

MessageBox.Show(DateTime.Now.ToShortTimeString(), "The Current Time Is",

MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);}

Hình 2.5 hiển thị chương trình đang chạy trên bộ mô phỏng Pocket PC Cái nútbấm có nhãn là What is the Time?, và khi nó được kích thì nó sẽ hiển thị thời gian hiệntại trong một hộp thoại.

Hình 2.5: Chạy ứng dụng GiveEmTime trên bộ mô phỏngPocket PC 2002

Bảng 2.4: KeyCodes tự phát sinh bởi Directional Pad trên một thiết bị Pocket PCKeyCode VALUEASSOCIATED HARDWARE BUTTON

Keys.Up The top of the pad was pressed.

Trang 28

Bảng 2.4: KeyCodes tự phát sinh bởi Directional Pad trên một thiết bị Pocket PCKeyCode VALUEASSOCIATED HARDWARE BUTTON

Keys.Down The bottom of the pad was pressed.

Keys.Left The left side of the pad was pressed.

Keys.Right The right side of the pad was pressed.

Keys.Return The center of the pad was pressed.

2.7 Sử dụng điều khiển TextBox

Điều khiển TextBox được sử dụng để nhận dữ liệu từ người dùng nhập vào Điềukhiển TexBox hỗ trợ các thuộc tính BackColor và ForeColor, nó không giống như đa số

các điều khiển khác trong NET Compact Framework sự kiện click không được hỗ trợ,

nhưng những sự kiện KeyPress, KeyUp, và KeyDown lại được hỗ trợ Thuộc tínhPasswordChar được hỗ trợ Và khi ta thiết lập thuộc tính này thì các kí tự nhập vào sẽđược chuyển thành các dâu sao (*) để che dấu các kí tự đó.

2.8 Sử dụng điều khiển Label.

Điều khiển Label cho phép bạn trình bày đoạn văn bản đến người sử dụng Đây làmột điều khiển đơn giản mà nó không cấn giải thích nhiều Thuộc tính Text của điều

khiển xác định điều mà văn bản sẽ hiển thị rõ ràng tới người sử dụng Hiển thị đoạn vănbản có thể có sự liên kết khác nhau dựa trên thuộc tính TextAlign Có thể xảy ra nhữnggiá trị canh lề như: TopLeft, TopCenter, và TopRight Sự kiện TextChanged được thực

thi khi đoạn văn bản trong một điều khiển Label thay đổi.

HANDLING THE POCKET PC HARDWARE BUTTONS

Pocket PC có một pad (miếng đệm) đinh hướng mà có thể sử dụng để tương tácvới những ứng dụng Pocket PC Nó có thể thực hiện bắt những sự kiện mà pad này sinhra Khi nào pad được nhấn, thì một sự kiện KeyDown được phát sinh phù hợp với đốitượng form Bộ xử lý sự kiện nhận được một đối tượng KeyEventArgs Đối tươngKeyEventArgs đưa ra thuộc tính KeyCode Bạn có thể kiểm tra giá trị của thuộc tínhKeyCode để xác định rõ điều khiển nào trên pad được nhấn Bảng 2.4 là bảng liệt kê

những thành phần key mà có thể là gán cho thuộc tính KeyCode và nút kết hợp với

chúng.

Trang 29

2.9 Điều khiển RadioButton.

Những điều khiển nút Radio phổ biến hiện nay đưa cho những người sử dụng mộtmảng những sự lựa chọn, và người sử dụng chỉ được chọn một trong các lựa chọn đó.Khi một nút rađiô trong một nhóm được lựa chọn, thì các nút còn lại sẽ tự động xoá.Những nút Rađiô được đặt vào cùng một nhóm giống nhau, nếu chúng giống nhau Mộtứng dụng có thể có nhiều nhóm nút rađiô.

Lớp RadioButton đưa ra hai sự kiện mà được thực thi khi trạng thái kiểm tra củamột RadioButton thay đổi: click và CheckedChanged Sự kiện click được đưa ra khi mộtngười sử dụng kích vào nút rađiô bằng bút nhọn Bạn có thể xử lý sự kiện click này giốngnhư bạn xử lý sự kiện click cho lớp Botton Sự kiện CheckedChanged được đưa ra khi tathay đổi trạng thái kiểm tra của RadioButton

Sự kiện click sẽ không được đưa ra nếu thuộc tính Checked của RadioButton được thayđổi theo chương trình Ứng dụng Arnie.exe giải thích việc sử dụng một nhóm điều khiểnRadioButton như thế nào (Bạn có thể tìm thấy mã cho ứng dụng này trong chương trìnhmẫu Arnie của quyển sách này.) Hình 2.6 hiển thị ứng dụng đang chạy trong bộ môphỏng Pocket PC

Hình 2.6: Chạy ứng dụng Arnie trên bộ mô phỏng Pocket PC 2002.

Khi một phim (movie) được lựa chọn, ứng dụng sẽ bắt sự kiện CheckedChangedcủa RadioButton, và một hộp thoại được hiển thị nếu đúng RadioButton được kiểm tra.

Trang 30

Mã sau đây trình bày việc xử lý sự kiện CheckedChanged như thế nào cho một câu trả lờisai.

("Wrong, The Terminator (1984) O.J Simpson almost got the role ", "Wrong!");

2.10 Sử dụng điều khiển CheckBox

Điều khiển CheckBox tương tự như điều khiển RadioButton, chúng cũng có mộttập danh sách để lựa chọn Nhưng nó khác với điều khiển RadioButton là nếu trong điềukhiển RadioButton, người sử dụng chỉ được chọn một lựa chọn trong danh sách các lựachọn, còn với điều khiển CheckBox thì người sử dụng có thể được chọn nhiều lựa chọnkhác nhau cùng một lúc Điều khiển CheckBox thông thường là một GUI có giá trị kiểuBoolean hoặc là một biểu thức

Điều khiển CheckBox cung cấp thuộc tính CheckState, mà nó xác định rằng liệuCheckBox có được kiểm tra hay không Thuộc tính CheckState thật sự là một bảng liệtkê, bảng liệt kê CheckState Những hàm thành phần của nó là Unchecked, Checked, vàIndeterminate Unchecked và Check thì ta không phải giải thích gì thêm Trạng tháiIndeterminate có thể chỉ được sử dụng khi thuộc tính ThreeState của điều khiểnCheckBox là true Khi CheckState là Indeterminate và thuộc tính ThreeState là true, thìđiều khiển sẽ được đánh dấu là màu xám nhưng nó vẫn được kiểm tra Điều đó báo hiệurằng trạng thái đó đã được kiểm tra Điều khiển sẽ không phản ứng lại với điều kiện làthuộc tính AutoCheck là false Khi thuộc tính AutoCheck thiết đặt là true thì một sự kiệnclick với bút bấm sẽ cho phép điều khiển.

Ứng dụng Apples.exe là một ví dụ đơn giản khác mà nó thử xác định xem ngườisử dụng thích kiểu apples gì Hình 2.7 hiển thị ứng dụng đang chạy trong bộ mô phỏngPocket PC Mã đầy đủ cho ứng dụng này có thể được tìm thấy trong mã nguồn của quyểnsách này.

Trang 31

Hình 2.7: Một ứng dụng của các điều khiển CheckBoxchạy trên bộ mô phỏng Pocket PC 2002.

2.11 Sử dụng điều khiển ComboBox.

Điều khiển ComboBox là điều khiển lý tưởng để đưa ra một danh sách của nhữnglựa chọn trong một số lượng được hạn chế của không gian màn hình ComboBox xuấthiện như một điều khiển TextBox với một mũi tên bên phải Một danh sách của nhữngtùy chọn được thả xuống ở dưới điều khiển khi người sử dụng kích vào mũi tên Khingười sử dụng lựa chọn một tùy chọn họăc kích vào mũi tên lần nữa, thì danh sách củanhững tùy chọn sẽ cuộn lên.

Thêm những mục chọn cho điều khiển ComboBox có thể được làm ở cả lúc thiếtkế và cả ở thời điểm chạy Để thêm những mục chọn cho ComboBox trong lúc thiết kế,đơn giản ta chọn ComboBox trong Form Designer Sau đó kích vào dấu ba chấm ở bêncạnh thuộc tính Items trong cửa sổ Properties Nó sẽ đưa ra cửa sổ String CollectionEditor ( Chúng ta sẽ nhìn thấy trong hình 2.8) Trong String Collection Editor, ta sẽ nhậpvào danh sách mục chọn để nó xuất hiện trong ComboBox Mỗi mục chọn phải xuất hiệntrên một hàng riêng biệt.

Trang 32

Hình 2.8:Cửa sổ String Collection Editor.

Mục chọn cũng có thể được thêm vào điều khiển ComboBox ở thời điểm Việcnày có thể được hoàn thành trong hai cách khác nhau Đầu tiên, ta gọi phương thức Add

trên thuộc tính tập hợp Items của điều khiển ComboBox Những mục chọn có thể đượcloại bỏ thông qua phương thức Remove trên tập Items, hay tất cả các mục chọn có thể

được loại bỏ bằng cách gọi phương thức Clear Đoạn mã sau đây thực hiện việc thêm bachuỗi cho một điều khiển ComboBox có tên là comboBox1:

comboBox1.Items.Add("Hi");comboBox1.Items.Add("Howdy");comboBox1.Items.Add("Wuz Up");

Bạn cũng có thể thêm những mục chọn cho một ComboBox ở thời điểm chạybằng cách liên kết điều khiển cho một đối tượng collection Việc này được thực hiệnbằng cách đặt DataSource cho đối tượng collection Khi ComboBox cố gắng để thêmnhững mục chọn vào danh sách thả xuống, nó sẽ gọi đến phương thức ToString trên mỗimục chọn trong DataSource và thêm các chuỗi vào danh sách thả xuống Chuỗi có thểtùy biến bởi sự thiết đặt thuộc tính DisplayName của điều khiển ComboBox

Đoạn mã sau giải thích việc liên kết một ComboBox với một danh sách củanhững đối tượng tuỳ biến như thế nào Lớp Customer là một lớp tuỳ biến mà nó nắm giữtên của tuỳ biến đó Khi ComboBox được giới hạn trong phương thức LoadCustomer, thìthuộc tính FullName được đặt như DisplayName.

Trang 33

Đoạn mã

class Customer { string m_First; string m_Middle; string m_Last;

public Customer(string first, string middle, string last) { m_First = (first == null) ? string.Empty : first;

m_Middle = (middle == null) ? string.Empty : middle; m_Last = (last == null) ? string.Empty : last;

}

public string FirstName { get { return m_First; } }

public string MiddleName { get { return m_Middle; } }

public string LastName { get { return m_Last; } }

static string FullNameWithInitial = "{0} {1} {2}"; static string FullNameNoInitial = "{0} {1}"; public string FullName {

private void LoadCustomers() { if(customers != null)

return;

customers = new Customer[6];

customers[0] = new Customer("Ronnie", "Donnell", "Yates"); customers[1] = new Customer("Moya", "Alicia", "Hines"); customers[2] = new Customer("Veronica", "Christine", "Yates"); customers[3] = new Customer("Diane", "", "Taylor");

Trang 34

customers[4] = new Customer("Kindell", "Elisha", "Yates"); customers[5] = new Customer("Zion", "Donnell", "Yates"); this.comboBox1.DataSource = customers;

this.comboBox1.DisplayMember = "FullName";}

Có hai cách vẫn được sử dụng mà mục chọn hiện thời được lựa chọn trongComboBox Đầu tiên, thuộc tính mục chọn SelectedIndex trả lại chỉ số của mục chọnhiện thời được lựa chọn Chỉ số này có thể được dùng để truy cập mục chọn được lựachọn từ thuộc tính Items của điều khiển ComboBox Mã sau đây minh họa thuộc tínhSelectIndex :

string selItem = comboBox1.Items[comboBox1.SelectedIndex].ToString();

Điều khiển ComboBox cũng cung cấp thuộc tính electedItem mà trả lại một thamchiếu đến mục chọn hiện thời được lựa chọn Mã sau đây trình bày việc sự sử dụng thuộctính SelectedItem như thế nào:

string selItem = comboBox1.SelectedItem.ToString();

2.12 Sử dụng điều khiển ListBox

ComboBox là một điều khiển lý tưởng cho những ứng dụng trong những môitrường có không gian giới hạn, nhưng với ListBox có thể được sử dụng nếu không gianmàn hình hiển thị vài tùy chọn cùng một lúc cho người sử dụng.

ComboBox và ListBox hầu như dùng chung tập hợp những thuộc tính và nhữngphương thức giống như nhau Nó bao gồm tập thuộc tính Items và các phương thức Add,Remove, và Clear trên thuộc tính Items Chẳng hạn, mã sau đây thêm những chuỗi kí tựcho một ListBox điều khiển khi thực hiện Mã sau đây gần giống với mã được dùng đểthêm chuỗi kí tự cho một điều khiển ComboBox.

listBox1.Items.Add("Hi");listBox1.Items.Add("Howdy");listBox1.Items.Add("Wuz Up");

Ngoài ra bạn cũng có thể thêm những mục chọn cho điều khiển ListBox ở tại thờiđiểm thực hiện bằng cách ràng buộc ListBox cho một tập hợp Quá trình của sự ràngbuộc một điều khiển ListBox giông hệt sự ràng buộc của một điều khiển ComboBox Đầu

Trang 35

tiên, đặt cho DataSource một tập hợp Tiếp theo đặt DisplayMember cho thuộc tính mụcchọn nguồn mà sẽ được sử dụng như chuỗi hiển thị

private void LoadCustomers() { if(customers != null)

return;

customers = new Customer[6];

customers[0] = new Customer("Ronnie", "Donnell", "Yates"); customers[1] = new Customer("Moya", "Alicia", "Hines"); customers[2] = new Customer("Veronica", "Christine", "Yates"); customers[3] = new Customer("Diane", "", "Taylor");

customers[4] = new Customer("Kindell", "Elisha", "Yates"); customers[5] = new Customer("Zion", "Donnell", "Yates"); this.listBox1.DataSource = customers;

this.listBox1.DisplayMember = "FullName";}

2.13 Các điều khiển khác

2.13.1 Sử dụng điều khiển NumericUpDown

Điều khiển NumericUpDown là một cách đơn giản để cho người sử dụng lựachọn một giá trị mà nó rơi giữa một số nhỏ nhât và một số lớn nhất Điều khiển có thể chỉchấp nhận những số nguyên, và những giá trị thập phân sẽ được làm tròn Trên PocketPC, giá trị cực đại không thể lớn hơn 16-bit số nguyên.

Điều khiển NumericUpDown được kiểm soát bởi bốn thuộc tính số nguyênMinimum, Maximum, Value, và Increment

- Những thuộc tính Minimum và Maximum xác định giá trị nhỏ nhất và giá trịlớn nhất của điều khiển

- Thuộc tính Value là giá trị hiện tại của điều khiển

- Thuộc tính Increment xác định số lượng qua giá trị hiện tại được tăng lên haygiảm xuống khi người sử dụng kích vào nút hướng lên trên hay nút hướngxuống Giá trị hiện tại luôn luôn là tăng hay giảm qua giá trị Increment, trừkhi giá trị kết quả vượt ra khỏi phạm vi được định nghĩa bởi giá trị Minimumvà Maximum

Ngoài ra, người sử dụng cũng có thể thay đổi thuộc tính Value bằng cách gõ vàomột giá trị mới trong điều khiển Nếu giá trị mà người sử dụng nhập vào nằm giữa cácgiá trị Minimum và Maximum, thì cả hai thuộc tính Value và Text sẽ được thay đổi để

Trang 36

giá trị mới được nhập vào Nếu giá trị mới vượt ra ngoài tập giới hạn, thì thuộc tính Textnhận giá trị được nhập vào, trong khi thuộc tính Value sẽ nhận giá trị của thuộc tínhMaximum Để những người sử dụng nhập đúng dữ liệu vào trong điều khiển, thì ta thiếtđặt thuộc tính ReadOnly là true.

Khi một người sử dụng thay đổi giá trị của điều khiển NumericUpDown , một sựkiện ValueChanged được thực hiện Sự kiện ValueChanged chỉ được thực hiện khi giá trịđược thay đổi thông qua mã hay qua những mũi tên lên và xuống Sự kiện đó sẽ khôngđược thực hiện khi một người sử dụng nhập vào trong điều khiển Đoạn code sau trìnhbày việc sử dụng điều khiển NumericUpDown như thế nào để xử lý sự kiệnValueChanged

Đoạn code

using System;

using System.Drawing;using System.Collections;using System.Windows.Forms;using System.Data;

namespace NumericUpDown{

public class Form1 : System.Windows.Forms.Form {

private System.Windows.Forms.NumericUpDown numericUpDown1; private System.Windows.Forms.Label label1;

private System.Windows.Forms.Label label2;

private System.Windows.Forms.MainMenu mainMenu1; public Form1()

{

InitializeComponent(); }

protected override void Dispose( bool disposing ) {

base.Dispose( disposing ); }

#region Windows Form Designer generated code /// <summary>

/// Required method for Designer support - do not modify /// the contents of this method with the code editor /// </summary>

private void InitializeComponent()

Trang 37

{

this.mainMenu1 = new System.Windows.Forms.MainMenu();

this.numericUpDown1 = new System.Windows.Forms.NumericUpDown(); this.label1 = new System.Windows.Forms.Label();

this.label2 = new System.Windows.Forms.Label(); //

// numericUpDown1 //

this.numericUpDown1.Location = new System.Drawing.Point(8, 56); this.numericUpDown1.Maximum =

new System.Decimal(new int[] {2003, 0, 0, 0}); this.numericUpDown1.Minimum =

new System.Decimal(new int[] {1900, 0, 0, 0}); this.numericUpDown1.Value =

new System.Decimal(new int[] {190012, 0, 0, 131072}); this.numericUpDown1.ValueChanged +=

new System.EventHandler(this.numericUpDown1_ValueChanged); //

// label1 //

this.label1.Location = new System.Drawing.Point(8, 24); this.label1.Size = new System.Drawing.Size(184, 16); this.label1.Text = "In what year were you born?"; this label1.ParentChanged +=

new System.EventHandler(this.label1_ParentChanged); //

// label2 //

this.label2.Location = new System.Drawing.Point(8, 120); this.label2.Size = new System.Drawing.Size(224, 24); //

// Form1 //

this.Controls.Add(this.label2); this.Controls.Add(this.label1);

this.Controls.Add(this.numericUpDown1); this.Menu = this.mainMenu1;

this.Text = "Form1"; }

#endregion static void Main() {

Application.Run(new Form1()); }

Trang 38

static string msg = "You are ~{0} years young.";

private void numericUpDown1_ValueChanged(object sender, System.EventArgs e) {

int yearsOld = System.DateTime.Now.Year - (int)this.numericUpDown1.Value; this.label2.Text = String.Format(msg, yearsOld);

} }

Hình 2.9: Hiển thị ứng dụng đang chạy trên bộ mô phỏng Pocket PC 2002.

Hình 2.9: Một ứng dụng có sử dụng điều khiển NumericUpDownđang chạy trên bộ mô phỏng Pocket PC 2002.

2.13.2 Sử dụng điều khiển DomainUpDown

Điều khiển DomainUpDown tương tự như điều khiển NumericUpDown , chỉ khácnhau ở một điểm là DomainUpDown có thể hiển thị một danh sách của những chuỗi kítự, còn điều khiển NumericUpDown chỉ có thể hiển thị một danh sách những số nguyên.Điều khiển DomainUpDown hiển thị một danh sách của những tùy chọn một cách rấthiệu quả vì nó có thể hiển thị chỉ một tùy chọn tại một thời điểm cho người sử dụng.

Điều khiển xuất hiện như một textbox với một cặp mũi tên lên và xuống ở bêncạnh phải của điều khiển Người sử dụng có thể di chuyển thông qua danh sách trong bacách khác nhau:

Trang 39

1 Bạn kích vào mũi tên có chiều lên thì nó sẽ di chuyển danh sách tuỳ chọn lên trênvà ngược lại.

2 Nếu thuộc tính ReadOnly được thiết đặt là false thì người sử dụng có thể nhập têncủa mục chọn trong danh sách.

3 Trong đa số những thiết bị Pocket PC đều có một nút mà có thể được dùng đểđịnh hướng điều khiển DomainUpDown Việc nhấn nút này lên và xuống sẽtương ứng với việc di chuyển lên và xuống những mục chọn trong danh sách.Nếu đặt thuộc tính ReadOnly là false, thì người sử dụng có thể nhập đoạn văn bảnvào trong điều khiển mà đoạn văn bản đó có thể không phù hợp với một mục chọn trongdanh sách Thuộc tính Text sẽ trả lại đoạn văn bản hiện thời trong điều khiển Điều nàycó nghĩa là bạn có thể cần kiểm tra việc nhập vào nếu ReadOnly đặt là false Bởi vì việckiểm tra đầu vào không được thực hiện qua điều khiển DomainUpDown, nên đoạn vănbản nhập vào trong điều khiển sẽ không lựa chọn một mục chọn tương ứng Việc thiết đặtthuộc tính ReadOnly là true thì sẽ giới hạn người sử dụng lựa chọn những mục chọn duynhất trong danh sách, như vậy sẽ loại trừ việc kiểm tra đầu vào.

Điều khiển DomainUpDown đưa ra thuộc tính Items, nó miêu tả danh sách củacác mục chọn trong điều khiển Bạn có thể thêm những mục chọn vào danh sách bằngcách sử dụng phương thức Add đặt vào thuộc tính Items Mã sau đây sẽ giải thích việcthêm ba mục chọn cho một điều khiển DomainUpDown như thế nào:

DomainUpDown dud = new DomainUpDown();dud.Items("TX");

Ngoài ra, bạn cũng có thể thêm những mục chọn cho điều khiển DomainUpDownở lúc thiết kế Đầu tiên, ta lựa chọn điều khiển trong Form Designer Tiếp theo, trong cửasổ Properties, kích vào nút ba chấm bên cạnh thuộc tính Items Việc làm này đưa ra mộthộp thoại String Collection Editor ( Như ta thấy trong hình 2.9).

Điều khiển DomainUpDown trình bày hai thuộc tính mà cho phép bạn xác địnhđoạn văn bản hiện thời trong điều khiển:

- Thuộc tính Text là chuỗi kí tự mà hiện thời đang được hiển thị trong điềukhiển Giá trị trả về không nhất thiết là một mục chọn trong danh sách

- Thuộc tính SelectedIndex là chỉ số của mục chọn trong danh sách mà hiệnthời đang hiển thị cho người sử dụng Bạn có thể sử dụng thuộc tính nàychung với thuộc tính Items để được giá trị chuỗi kí tự của mục chọn

Trang 40

Khi thuộc tính Text được thay đổi, một sự kiện TextChanged được thực thi, vàkhi thuộc tính SelectedIndex được thay đổi thì một sự kiện SelectedIndexChanged đượcthực thi Sự kiện SelectedIndexChanged được thực thi chỉ khi chỉ số được thay đổi quacode hoặc qua việc kích vào các mũi tên lên và xuống Sự kiện sẽ không được thực thikhi người sử dụng nhập vào điều khiển code dưới đây trình bày việc xử lý cả hai sự kiện:

private void domainUpDown1_SelectedItemChanged(object sender, System.EventArgs e) {

int selNdx = this.domainUpDown1.SelectedIndex;

string selStr = this.domainUpDown1.Items[selNdx].ToString(); MessageBox.Show("You selected " + selStr);

2.13.3 Điều khiển ProgressBar

Điều khiển ProgressBar đưa ra cho những người sử dụng một biểu diễn đồ hoạcủa một thao tác đang tiến triển như thế nào Nó có ích khi ứng dụng của bạn cần thựchiện một thao tác tốn nhiều thời gian và bạn không muốn người sử dụng nghĩ rằng ứngdụng của bạn là không thực hiện hoặc nó đang rơi vào trạng thái lặp vô tân.

Điều khiển ProgressBar được kiểm soát bởi ba thuộc tính Int32: Minimum,Maximum, và Value Những giá trị Minimum và Maximum xác định giá trị lớn nhất vàgiá trị nhỏ nhất của điều khiển ProgressBar Thuộc tính Value xác định giá trị của điềukhiển ProgressBar Điều khiển ProgressBar sẽ được điền các giá trị từ bên trái sang bênphải khi thuộc tính Value sẽ tăng dần lên từ giá trị Minimum đến giá trị Maximum Điềukhiển ProgressBar rỗng khi thuộc tính Value bằng với thuộc tính Minimum Và mỗi mộtlần thuộc tính Value bằng giá trị Maximum thì điều khiển ProgressBar sẽ đạt tới giá trịlớn nhất Ngay sau khi thuộc tính Value được thay đổi thì điều khiển ProgressBar sẽ nhậnmột giá trịn mới.

Hình 2.10 và hình 2.11 hiển thị một chương trình game BombSquad.exe đangchạy trong bộ mô phỏng Pocket PC 2002 Game BombSquad là một trò chơi đơn giản, nóđặt cho bạn một lượng thời gian để khuếch tán một quả bom nguy hiểm bằng cách kíchvào nút Diffuse trước khi điều khiển ProgressBar được làm đầy Vị trí của nút Diffuseliên tục thay đổi trong khi trò chơi đang được chơi Hình 2.10 hiển thị kết quả thành côngcủa việc khuếch tán, và hình 2.11 hiển thị kết quả không thành công của viêc khuếch tánbom.

Ngày đăng: 25/04/2013, 21:48

HÌNH ẢNH LIÊN QUAN

Hình 1: Của sổ Start Page hiển thị khi khởi động chương trình Visual Studio. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 1 Của sổ Start Page hiển thị khi khởi động chương trình Visual Studio (Trang 6)
Hình 1: Của sổ Start Page hiển thị khi khởi động chương trình Visual Studio. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 1 Của sổ Start Page hiển thị khi khởi động chương trình Visual Studio (Trang 6)
Hình 2: Hộp thoại tạo một Visual Basic Smart Device Application - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2 Hộp thoại tạo một Visual Basic Smart Device Application (Trang 7)
Hình 2: Hộp thoại tạo một Visual Basic Smart Device Application - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2 Hộp thoại tạo một Visual Basic Smart Device Application (Trang 7)
Hình 3: chọn một nền đích và một mẫu ứng dụng - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 3 chọn một nền đích và một mẫu ứng dụng (Trang 8)
Hình 3: chọn một nền đích và một mẫu ứng dụng - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 3 chọn một nền đích và một mẫu ứng dụng (Trang 8)
Hình 5: Hiển thị hộp ToolBox. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 5 Hiển thị hộp ToolBox (Trang 10)
Hình 5: Hiển thị hộp ToolBox. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 5 Hiển thị hộp ToolBox (Trang 10)
Hình 6: Hiển thị kết quả sau khi kéo TextBox và Button vào Form - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 6 Hiển thị kết quả sau khi kéo TextBox và Button vào Form (Trang 11)
Hình 7: Hiển thị code sau khi kích vào nút button trên Form - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 7 Hiển thị code sau khi kích vào nút button trên Form (Trang 12)
Hình 7:  Hiển thị code sau khi kích vào nút button trên Form - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 7 Hiển thị code sau khi kích vào nút button trên Form (Trang 12)
Hình 8: Trước khi triển khai một ứng dụng cho một thiết bị, Visual Studio cho thấy hộp thoại triển khai. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 8 Trước khi triển khai một ứng dụng cho một thiết bị, Visual Studio cho thấy hộp thoại triển khai (Trang 13)
Hình 9: Thiết bị mô phỏng chạy ứng dụng Hello World. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 9 Thiết bị mô phỏng chạy ứng dụng Hello World (Trang 14)
Hình 9:  Thiết bị mô phỏng chạy ứng dụng Hello World. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 9 Thiết bị mô phỏng chạy ứng dụng Hello World (Trang 14)
+ Bước 2: kích đúp trên mục Device Tools và chọn Devices. Xem hình 10 - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
c 2: kích đúp trên mục Device Tools và chọn Devices. Xem hình 10 (Trang 16)
Hình 10: Sử dụng hộp thoại kết nối thiết bị để chọn kiểu thiết bị muốn kết nối. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 10 Sử dụng hộp thoại kết nối thiết bị để chọn kiểu thiết bị muốn kết nối (Trang 16)
Hình 2.1: Khung Designer của SDE Pocket PC. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.1 Khung Designer của SDE Pocket PC (Trang 19)
Hình 2.1: Khung Designer của SDE Pocket PC. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.1 Khung Designer của SDE Pocket PC (Trang 19)
Hình 2.2: Cửa sổ ToolBox của một dự án SDE Pocket PC. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.2 Cửa sổ ToolBox của một dự án SDE Pocket PC (Trang 20)
Hình 2.2: Cửa sổ ToolBox của một dự án SDE Pocket PC. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.2 Cửa sổ ToolBox của một dự án SDE Pocket PC (Trang 20)
Hình 2.3: Cửa sổ Properties của một điều khiển TextBox. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.3 Cửa sổ Properties của một điều khiển TextBox (Trang 21)
Hình 2.3: Cửa sổ Properties của một điều khiển TextBox. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.3 Cửa sổ Properties của một điều khiển TextBox (Trang 21)
Hình 2.4: Của sổ Properties hiển thị những sự kiện của control Button. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.4 Của sổ Properties hiển thị những sự kiện của control Button (Trang 22)
Hình 2.4: Của sổ Properties hiển thị những sự kiện của control Button. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.4 Của sổ Properties hiển thị những sự kiện của control Button (Trang 22)
Hình 2.6: Chạy ứng dụng Arnie trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.6 Chạy ứng dụng Arnie trên bộ mô phỏng Pocket PC 2002 (Trang 29)
Hình 2.6: Chạy ứng dụng Arnie trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.6 Chạy ứng dụng Arnie trên bộ mô phỏng Pocket PC 2002 (Trang 29)
Hình 2.7: Một ứng dụng của các điều khiển CheckBox chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.7 Một ứng dụng của các điều khiển CheckBox chạy trên bộ mô phỏng Pocket PC 2002 (Trang 31)
Hình 2.7: Một ứng dụng của các điều khiển CheckBox chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.7 Một ứng dụng của các điều khiển CheckBox chạy trên bộ mô phỏng Pocket PC 2002 (Trang 31)
Hình 2.8:Cửa sổ String Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.8 Cửa sổ String Collection Editor (Trang 32)
Hình 2.8:Cửa sổ  String Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.8 Cửa sổ String Collection Editor (Trang 32)
Hình 2.9: Hiển thị ứng dụng đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.9 Hiển thị ứng dụng đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 38)
Hình 2.9 : Hiển thị ứng dụng đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.9 Hiển thị ứng dụng đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 38)
Hình 2.11: Bạn thua cuộc trong trò chơi BombSquad bằng cách - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.11 Bạn thua cuộc trong trò chơi BombSquad bằng cách (Trang 41)
Hình 2.10: Bạn chiến thắng trò chơi BombSquad bằng cách khuếch tán quả bom trước khi thanh progress bar đầy - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.10 Bạn chiến thắng trò chơi BombSquad bằng cách khuếch tán quả bom trước khi thanh progress bar đầy (Trang 41)
Hình 2.10: Bạn chiến thắng trò chơi BombSquad bằng cách khuếch tán quả bom trước khi thanh progress bar đầy - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.10 Bạn chiến thắng trò chơi BombSquad bằng cách khuếch tán quả bom trước khi thanh progress bar đầy (Trang 41)
Hình 2.11: Bạn thua cuộc trong  trò chơi BombSquad bằng cách - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.11 Bạn thua cuộc trong trò chơi BombSquad bằng cách (Trang 41)
Hình 2.12: Một ứng dụng đơn giản có sử dụng điều khiển StatusBar đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.12 Một ứng dụng đơn giản có sử dụng điều khiển StatusBar đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 42)
Hình 2.12: Một ứng dụng đơn giản có sử dụng điều khiển StatusBar đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.12 Một ứng dụng đơn giản có sử dụng điều khiển StatusBar đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 42)
Hình 2.13: Một ứng dụng hiển thị điều khiển TrackBar đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.13 Một ứng dụng hiển thị điều khiển TrackBar đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 43)
Hình 2.13: Một ứng dụng hiển thị điều khiển TrackBar đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.13 Một ứng dụng hiển thị điều khiển TrackBar đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 43)
Hình 2.15:Một ứng dụng sử dụng điều khiển ToolBar chạy trên bộ mô phỏn g Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.15 Một ứng dụng sử dụng điều khiển ToolBar chạy trên bộ mô phỏn g Pocket PC 2002 (Trang 45)
Hình 2.15:Một ứng dụng sử dụng điều khiển ToolBar chạy trên bộ mô phỏn g Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.15 Một ứng dụng sử dụng điều khiển ToolBar chạy trên bộ mô phỏn g Pocket PC 2002 (Trang 45)
Hình 2.16: Cửa sổ Image Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.16 Cửa sổ Image Collection Editor (Trang 46)
Hình 2.16: Cửa sổ Image Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.16 Cửa sổ Image Collection Editor (Trang 46)
Hình 2.17: Cửa sổ ToolBarButton Collection Editor - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.17 Cửa sổ ToolBarButton Collection Editor (Trang 47)
Hình 2.17: Cửa sổ ToolBarButton Collection Editor - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.17 Cửa sổ ToolBarButton Collection Editor (Trang 47)
Hình 2.19: Một ứng dụng đơn giản có sử dụng điều khiển ContextMenu đang được chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.19 Một ứng dụng đơn giản có sử dụng điều khiển ContextMenu đang được chạy trên bộ mô phỏng Pocket PC 2002 (Trang 52)
Hình 2.21: Đây là một ứng dụng sử dụng điều khiển PictureBox đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.21 Đây là một ứng dụng sử dụng điều khiển PictureBox đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 59)
Hình 2.21: Đây là một ứng dụng sử dụng điều khiển PictureBox đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.21 Đây là một ứng dụng sử dụng điều khiển PictureBox đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 59)
Hình 2.22: Đây là một ứng dụng sử dụng điều khiển ListView đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.22 Đây là một ứng dụng sử dụng điều khiển ListView đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 60)
Hình 2.22: Đây là một ứng dụng sử dụng điều khiển ListView đang chạy trên bộ mô phỏng Pocket PC 2002. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.22 Đây là một ứng dụng sử dụng điều khiển ListView đang chạy trên bộ mô phỏng Pocket PC 2002 (Trang 60)
Hình 2.23: Cửa sổ ColumnHeader Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.23 Cửa sổ ColumnHeader Collection Editor (Trang 61)
Hình 2.23: Cửa sổ ColumnHeader Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.23 Cửa sổ ColumnHeader Collection Editor (Trang 61)
Hình 2.24: Cửa sổ ListViewItem Collection Editor - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.24 Cửa sổ ListViewItem Collection Editor (Trang 62)
Hình 2.24: Cửa sổ ListViewItem Collection Editor - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.24 Cửa sổ ListViewItem Collection Editor (Trang 62)
Hình 2.25: Cửa sổ ListViewSubItem Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.25 Cửa sổ ListViewSubItem Collection Editor (Trang 63)
Hình 2.25: Cửa sổ ListViewSubItem Collection Editor. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 2.25 Cửa sổ ListViewSubItem Collection Editor (Trang 63)
Hình 6.1: Đây là một DataSet mô tả cấu trúc của một phone book. - Tìm hiểu về công nghệ .NET Compact Framework và lập trình ứng dụng trên Pocket PC.
Hình 6.1 Đây là một DataSet mô tả cấu trúc của một phone book (Trang 64)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w