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

Tìm hiểu công nghệ Net Compact Framework

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 (863.04 KB, 68 trang )

Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


1

Mục Lục

Chương 1. Công nghệ .Net Compact Framework .......................................................... 2
1.1. Giới thiệu .Net Compact Framework ................................................................... 2
1.2. Kiến trúc của .Net Compact Framework ........................................................... 17
Chương 2. Phát triển ứng dụng với Windown Form .................................................... 20
2.1. Các điều khiển không được hỗ trợ trong .Net Compact Framework ................. 20
2.2. Các hàm không được hỗ trợ trong .Net Compact Framework ........................... 20
2.3. Thiết kế Form với Visual Studio .Net ................................................................ 21
2.4. Sự khác nhau giữa các nền tảng Windows Form ............................................... 26
2.5. Làm việc với điều khiển Form ........................................................................... 28
2.6. Điều khiển Button .......................................................................................... 31
2.7. Điều khiển Textbox ........................................................................................ 33
2.8. Điều khiển Label ............................................................................................. 33
2.9. Điều khiển RadioButton .................................................................................... 33
2.10. Điều khiển CheckBox .................................................................................... 34
2.11. Điều khiển ComboBox .................................................................................... 35
2.12. Điều khiển ListBox ......................................................................................... 37
2.13. Các điều khiển khác ......................................................................................... 38
Chương 3. Kết nối cơ sở dữ liệu trong .Net Compact Framework ............................... 39
3.1. ADO.Net trên .Net Compact Framework .......................................................... 39
3.2. Lập trình với Microsoft SQL Server CE ........................................................... 48
Tài liệu tham khảo……………………………………………………………………66





















THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tỡm hiu cụng ngh .Net Compact Framework

16/4/2008


2


Chng 1. Cụng ngh .Net Compact Framework
1.1. Gii thiu .Net Compact Framework

Nh chỳng ta ó bit, trc õy vic phỏt trin ng dng cho cỏc thit b cm tay
ũi hi cỏc k nng lp trỡnh c bit, ti nguyờn lm vic cho cỏc thit b luụn b hn ch
v ũi hi cỏc k nng thit k c bit xõy dng mt ng dng tt m cú th lm vic
trờn mt mn hỡnh cú kớch thc bộ hn rt nhiu so vi kớch thuc ca desktop. Chớnh vỡ
vy nhng ngi phỏt trin ng dng cho cỏc thit b cm tay gp rt nhiu khú khn.
Tuy nhiờn, ngy nay vi .Net Compact Framework v Smart Device Extension(SDE)
c tớch hp sn trong Visual Studio .Net, Microsoft ó cung cp nhng k nng phỏt
trin phn mm mi phự hp cho nhng ngi phỏt trin phn mm trờn desktop v trờn
mobile. Nhng ngi ó cú k nng lm vic tt vi .Net Framework y trong Visual
Studio .Net cú th d dng phỏt trin ng dng cho cỏc thit b cm tay bng cỏch s
dng mụi trng lm vic tng t, cỏc ngụn ng lp trỡnh tng t v cỏc lp th vin
l tp con ca th vin y .
1.1.1. S lc v lch s ca cỏc thit b Smart Mobile Computing

.Net Compact Framework h tr cho cỏc thit b cú mt s c im di õy:
Cú mt CPU cú kh nng x lý thụng tin tt
Cú Ram lu tr chng trỡnh v d liu
Cú b nh ngoi
Cỏc c im trờn c xem nh c im ca mt thit b thụng minh. Tuy nhiờn,
õy khụng phi l mt nh ngha v mt thit b thụng minh. Do ú cng cú ngi phỏt
biu rng mt thit b thụng minh l thit b cú kớch thc mn hỡnh nh, cú kh nng kt
ni vi mng mỏy tớnh v chy cỏc chng trỡnh. Mt s mobile phone thc hin gi
thụng ip v cú kh nng truy cp vo ni dung Web thụng qua Wap hoc i-mode,
nhng cỏc thit b mobile ny ớt hoc khụng h tr chy cỏc ng dng khỏch hng. Cỏc
thit b smart mobile m chy trờn nn tng .Net Compact Framework cú kh nng ú
hn so vi cỏc thit b mobile phone.
a. S khi u ca mỏy tớnh xỏch tay

Mỏy tớnh xỏch tay u tiờn l Osbone 1, c gii thiu ti West Coast Computer
Fair vo thỏng 4 nm 1981. Osbone cú mn hỡnh CRT nh kớch thc 5-inch, mn hỡnh

ny ch hin th c 52 ký t nhng nú cú kh nng di chuyn sang trỏi v phi hin
th cỏc dũng vn bn di(Hỡnh 1.1). Osbone cng cú th chy c mt s phn mm nh
Basic, WordStar, SuperCalc.

THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


3

Hình 1.1. Máy tính xách tay đầu tiên
Giá của mỗi chiếc Osbone1 là $1,795 và nó được bán với tốc độ 10.000 chiếc một
tháng. Đến năm 1982 máy Compact ra dời, nó nặng 28 pounds, sử dụng bộ xử lý 8088,
Ram 128 kb, có một đĩa mề 5.25 inch. Nó được bán với giá $3.000.
Một vài năm sau xuất hiện một số máy xách tay khác như Epson -HX 20, Commodore
SX-64, Radio Shack TRS-80 Model 100. Trong đó Radio Shack TRS-80 được xem là
máy notebook đầu tiên.
b. Các phát minh của PSION
Tại cuộc họp vào năm 1984, công ty công nghệ Psion của Mỹ đã định nghĩa về
máy Personal digital assistant (PDA). Họ đã cho ra đời Psion1. Psion1 dựa trên công
nghệ 8-bit, có màn hình hiển thị LCD 16 ký tự, một clock/calendar, một có sở dữ liệu với
một chức năng tìm kiếm.
Psion1 được nâng cấp lên Psion II và đầu những năm 1990, 500.000 chiếc Psion
II đã được sản xuất. Năm 1993, Series 3a ra đời, phá vỡ khoảng cách về địa lý với khả
năng kết nối với máy tính, truyền, biến đổi và đồng bộ dữ liệu giữa 2 môi trường của nó.
Khoảng 2 năm sau đó, vị trí của Psion trên thị trường PDA đã được khẳng định. Năm
1997, Psion cho ra đời Series 3c và Series 5 32-bit.
c. Phát triển thị trường PDA

Tên Personal Digital Assistant được đặt đầu tiên bởi Apple CEO John Sculley
trong một bài phát biểu tại Winter Consumer Show vào năm 1992. Năm 1993 Apple’s
Newton MessagePad ra đời (hình 1.2). Tính chất đổi mới của thiết bị này là sử dụng bút
để nhập thông tin vào và thừa nhận các chữ viết tay, có thể quản lý thông tin cá nhân
(PIM) và có khả năng liên lạc. Apple’s Newton chỉ thành công trong một thời gian vì
ngay sau đó xuất hiện sự cạnh tranh của một số công ty như Amstrad PenPad, the Casio
and Tandy Zoomer, the Sony MagicLink, and the IBM/Bell South Simon.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tỡm hiu cụng ngh .Net Compact Framework

16/4/2008


4

Hỡnh 1.2. Mỏy Newton Apple
d. Microsoft v cỏc thit b cm tay
Cựng vi s phỏt trin ca th trng PDA, Microsoft cng ó cho ra i cỏc h
h iu hnh nh Window CE (1996) v Pocket PC 2000, vWindow Mobile 2005. Hin
nay trờn th trng cú rt nhiu sn phm s dng h iu hnh Window CE, Pocket PC
2000 v Window Mobile 2005 ca Microsoft nh:
O
2
: õy l nhón hiu ni ting nht trong dũng Pocket PC trờn th trng Vit
Nam. Mt s sn phm loi ny ang cú mt ti Vit Nam nh l O
2
XDA, O
2
XDAII, O
2

XDAII mini, O
2
XDAIIs, O
2
XDAIIi. Nhng sn phm loi ny c h tr rt tt trong
vic nõng cp h iu hnh. Chỳng cú th d dng nõng cp t h iu hnh nguyờn bn
lờn Windows Mobile 2005

HP iPq hx 4700: õy l sn phm ca hóng Hewlett Packard. Sn phm ny ni
bt vi h iu hnh Windows Mobile 2003 SE, b vi x lý XScale th h th hai ca
Intel v mn hỡnh VGA rng. Ngoi ra mn hỡnh cũn c h tr giao din 3D ca h
iu hnh Windows CE 4.21.
THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


5

Asus P505: Là sản phẩm đầu tiên của Asus trên thị trường Pocket PC. Sử dụng
hệ điều hành Windows Mobile 2003 Second Edition, P505 hoạt động trên 3 băng tần
GSM 900/1.800/1.900 MHz và được hỗ trợ GPRS Class B. Asus đã thiết kế cho máy một
bàn phím bật (flip) có nút điều khiển 2 chiều lên xuống, rất thuận tiện cho việc sử dụng
các ứng dụng của Pocket PC.

Axim X51v: Nét nổi bật của sản phẩm này là chạy hệ điều hành Windows Mobile
5.0, nhiều tính năng tiện dụng, màn hình chất lượng cao. Máy có bộ nhớ trong lớn (ROM
256 MB), 2 khe cắm thẻ nhớ và jack cắm tai nghe tiêu chuẩn 3,5 mm.


THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tỡm hiu cụng ngh .Net Compact Framework

16/4/2008


6
iPaq rw6828: l thit b h tr cỏ nhõn u tiờn s dng h iu hnh Windows
Mobile 5 h tr chc nng push-email ca hóng Hewlett Packard. Do chy h iu hnh
Windows Mobile 5 nờn thit b cng c ci t sn cỏc ng dng vn phũng nh: MS
Word, Excel, Power Point, Internet Explorer v Outlook 2002.

Ngoi ra cũn cú mt s sn phm khỏc nh Mio 168RS s dng h iu hnh
Windows Mobile 2003 Second Edition, Atom Exec ca hóng O
2
s dng h iu hnh
Windows Mobile 5.0, Siemens SX66 s dng h iu hnh Windows Mobile 2003
Second Edition vv.
1.1.2. Nhng nột mi trong .Net Compact Framework
.NET Compact Framework l nn tng d liu cho cỏc ng dng Visual Studio
.NET c phỏt trin cho cỏc thit b di ng s dng h iu hnh Windows CE hoc
Windows Mobile. Nú l phiờn bn nh ca phiờn bn y .Net Framework, nú bao
gm mt tp con cỏc lp th vin c bn ca .Net Framework v mt s lp th vin
mi c thit k c bit s dng cho cỏc thit b mobile. Ngoi ra .Net Compact
Framework cũn cú s b sung mi cho CLR cho phộp cỏc ng dng cú th chy tt
trờn cỏc thit b nh m b hn ch v c nng lng ca b nh v CPU.
Cỏc ngụn ng lp trỡnh truyn thng nh C, C++, Pascal, v..v, thng s dng
mt trỡnh biờn dch chuyn trc tip mó ngun sang mó mỏy hiu c. Vi cỏch lm
ny, ũi hi nhng ngi lp trỡnh phi tp trung vo vic qun lý cỏc chi tit mc thp
nh vic phõn hoch b nh v vic tng tỏc vi cỏc mó th vin bờn ngoi. Cỏc mó th

vin ny bao gm c cỏc file DLL ca h iu hnh Window. Cỏc chng trỡnh cú th
tng tỏc vi h iu hnh bng cỏch gi trc tip n API ca h iu hnh hoc bng
cỏch s dng mt trong cỏc hm th vin nh MFC, BorlandsOWL.
Kh nng di chuyn gia cỏc nn tng bng cỏch s dng native code thng khú
khn bi vỡ API ca cỏc h iu hnh v c bn thng khỏc nhau. Thm chớ vic tng
tỏc gia cỏc thnh phn trong cỏc ngụn ng lp trỡnh khỏc nhau trờn cựng mt h iu
hnh cng gp khú khn vỡ cỏc ngụn ng lp trỡnh khỏc nhau s cỏch biu din nh phõn
khỏc nhau cho cỏc cu trỳc d liu. Túm li, s tng tỏc l khú khn gia cỏc h iu
hnh, gia cỏc kiu CPU trờn cựng mt h iu hnh v gia cỏc ngụn ng lp trỡnh khỏc
nhau chy trờn cựng mt mỏy.
THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


7
Khi Visual Studio 7.1 ra đời cùng với .Net Compact FrameWork tất cả các vấn đề
khó khăn trên đã được giải quyết. Visual Studio 7.1 với Smart Device Extensions và
những đặc điểm quan trọng dưới đây đã giúp những người phát triển các ứng dụng cho
các thiết bị chạy trên các hệ điều hành Window CE và Pocket PC nhanh hơn và dễ dàng
hơn so với trước đây:

• Hai ngôn ngữ lập trình C# và Visual Basic .Net được hỗ trợ bởi Smart Device
Extension có khả năng tương tác giữa các thành phần rất dễ dàng bởi vì cả hai đều
được biên dịch sang cùng một định dạng bytecode và đều cung cấp sự truy cấp
đến các đối tượng dữ liệu bên trong .Net Compact Framework.
• Một số ngôn ngữ mà chạy trên .Net Compact Framework có thể trao đổi các đối
tượng từ .Net Compact Framework với các ngôn ngữ khác mà cũng có sự hỗ trợ
của .Net Compact Framework.

• Trình biên dịch cho các ứng dụng là tương tự nhau, không quan tâm đến kiến trúc
xử lý bên dưới. Những người lập trình có thể xây dựng một ứng dụng và triển
khai nó trên phần cứng chạy hệ điều hành Pocket PC hoặc Window CE.
• .Net Compact Framework cung cấp một định dạng chung cho API để những
người lập trình có thể viết ứng dụng trên nhiều ngôn ngữ khác nhau được hỗ trợ
bởi .Net Compact Framework.
• .Net Compact Framework cũng hỗ trợ phát triển Window Forms giúp nhanh
chóng đưa ra giao diện người dùng cho ứng dụng.
• .Net Compact Framework cung cấp các lớp truy cập dữ liệu, các lớp thao tác
XML, tập các kiểu dữ liệu cơ sỏ, cho phép dễ dàng sử dụng sự hỗ trợ của
networking và nhiều hơn nữa.
• .Net Compact Framework và Common language runtime (Ngôn ngữ thực thi
chung) cung cấp khả năng thu gom rác
• .Net Compact Framework cung cấp kiểu chuỗi mà không cần phải hiểu sự phức
tạp của việc tạo thành các chuỗi trực tiếp từ hệ điều hành.
• Nhiều phiên bản của .Net Compact Framework có thể hoạt động cùng nhau. Các
ứng dụng sẽ hướng tới các phiên bản mà chúng biết là chúng tương thích với
phiên bản đó.
1.1.3. Smart Device Extension và .Net Compact Framework
a. Yêu cầu hệ thống

Smart Device Extensions là môi trường phát triển tích hợp (IDE) mà các nhà phát
triển nhằm vào .NET Compact Framework. Nó là một thành phần củaVisual Studio .NET
version 7.1 hoặc mới hơn.
Để chạy được các công cụ trên, yêu cầu tối thiểu về cấu hình như sau:



THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework


16/4/2008


8









Lĩnh vực Yêu cầu
Operating system and
RAM
Windows 2000 Professional; 96MB RAM, 128MB
đề nghị Windows 2000 Server; 192MB RAM,
256MB đề nghị Windows XP Professional; 192MB
RAM, 256MB đề nghị Windows XP Home; 96MB
RAM, 256MB đề nghị Windows .NET Server
2003; 192MB RAM, 256MB đề nghị
Hard disk space Ít nhất 900MB trên ổ chứa hệ điều hành và khoảng
4.1GB để cài Micorsoft Visual Studio .Net
Processor speed Tối thiểu Pentium II 450MHz hoặc tương đương;
Pentium III 600MHz hoặc lớn hơn
Device connectivity ActiveSync 3.5 hoặc mới hơn

Bảng 1.1. yêu cầu hệ thống cho Visual Studio .NET 2005


b. Sử dụng Smart Device Extension trong quá trình phát triển
Cách dễ nhất để phát triển .NET Compact Framework là sử dụng Smart Device
Extensions trong Visual Studio .NET 7.1. Nó đơn giản là mở rộng của Visual Studio 7.1,
Smart Device Extensions đưa ra các kiểu tạo ứng dụng, cho phép chúng ta tập chung vào
các thiết bị sử dụng Windows CE hỗ trợ .NET Compact Framework, như là Pocket PC.
Điều này có nghĩa là sử dụng Smart Device Extensions để phát triển các ứng dụng trên
Windows CE như phát triển các ứng dụng trên Windows 2000 or XP.
Tạo ứng dụng cho các thiết bị Pocket PC
Chúng ta sẽ tạo một ứng dụng đơn giản “Hello World” bằng ngôn ngữ C#.
Bước 1: Khi chúng ta chạy Visual Studio .NET lần đâu, sẽ hiển thị Start Page, như hình
1.3. Để tạo ứng dụng mới, bấm vào nút có nhãn New Project gần phía dưới của màn hình.
Hoặc vào menu File -> New -> Project hoặc sử dụng Ctrl+ Shift +N.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


9



Hình 1.3. Start Page được hiển thị khi chạy Visual Studio .NET.
Bước 2: Sau khi chọn New Project, một hộp thoại xuất hiện cho phép chúng ta chọn kiểu
dự án, nền tảng và mẫu ứng dụng. Lựa chọn như hình 1.4. Điền tên dự án vào mục Name,
và nơi chứa dự án vào mục Localtion. Trong hộp thoại này có 2 phần:
- "Project types": Phần này cho phép chúng ta chọn kiểu thiết bị mà chúng ta muốn phát
triển trên nó. Chúng ta sẽ chọn nền tảng Pocket PC, điều này có nghĩa ứng dụng của
chúng ta sẽ chạy trên tất cả các thiết bị hỗ trợ hệ điều hành Pocket PC.

- "Templates": Device Application, Class Library, Control Library và Empty Project.
Chúng ta sẽ chọn Device Application. Kiểu dự án này thiết lập form chính tự động và
cung cấp môi trường thiết kế đồ họa giúp dễ dàng thêm các điều khiển vào ứng dụng.

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


10


Hình 1.4. Hộp thoại tạo một Visual C# Smart Device Application























THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


11
Bước 3. Sau khi lựa chọn xong ta nhấn vào nút OK ta được màn hình như hình 1.5



Hình 1.5. Thiết kế Form xuất hiện sau khi dự án được tạo
Bước 4. Bên trái của phần thiết kế Form, là nhãn Toolbox. Bấm vào đó đưa đến cho
chúng ta hộp công cụ Toolbox, như hình 1.6.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


12


Hình 1.6. Hộp công cụ Toolbox cho dự án Smart Device Application

Bước 5: Tất cả các điều khiển trong hộp công cụ đều có thể sử dụng trong các dự án
.NET Compact Framework. Kéo một số điều khiển vào Forms như hình 1.7.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


13


Hình 1.7. Sau khi kéo một số điều khiển vào Forms.
Bước 7: Bấm đúp vào nút có nhãn button1, IDE đưa đến phần soạn thảo mã nguồn và
con trỏ sẽ nhấp nháy ở trong phương thức button1_Click. Chúng ta sẽ đưa vào một số
dòng lệnh như hình 1.8.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


14


Hình 1.8. Visual Studio hiển thị mã lệnh khi nút trong Form được bấm đúp.

Bước 8: Bây giờ chúng ta có thể biên dịch và triển khai trên thiết bị. Để triển khai trên
thiết bị và chạy ứng dụng, chọn Debug, Start Without Debugging. Trước tiên Visual
Studio biên dịch mã nguồn và đưa cho chúng ta hộp thoại Deploy
SmartDeviceApplication như hình 1.9.

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


15

Hình 1.9. Trước khi triển khai ứng dụng trên thiết bị, Visual Studio
đưa ra hộp thoại.
Bước 9: Để chạy thử ứng dụng trên máy tính Desktop, chúng ta chọn Pocket PC 2002
Emulator. Nếu muốn chạy thử trên thiết bị thực, chúng ta chọn Pocket PC Device. Phải
đảm bảo rằng thiết bị đã được kết nối thông quan đường ActiveSync 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à chạy ứng dụng. Nếu chúng
ta bấm vào nút Button1, chúng ta nhận được thông báo “Hello World” như hình 1.10.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


16


Hình 1.10. Thiết bị emulator chạy ứng dụng hello world.

1.1.4. Các nền tảng của .Net Compact Framework

Phiên bản đầu tiên của .Net Compact Framework hỗ trợ cho Windows-powered

Pocket PCs và các thiết bị chạy hệ điều hành Windows CE.Net
a. Các nền tảng mà .Net Compact Framework hỗ trợ
Phiên bản 1 của .Net Compact Framework hỗ trợ nền tảng sau của Microft:
- Pocket PC 2000: Các thiết bị này có thể mua được từ một số hãng sản xuất và nó
sử dụng các bộ xử lý ARM, MIPS, SH3 hoặc SH4. .Net Compact Framework
được hỗ trợ trên tất cả các bộ xử lý đó.
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


17
- Pocket PC 2002 : Pocket PC 2002 ra đời từ sự nâng cấp hệ điều hành Pocket PC
mà sử dụng bộ xử lý ARM.
- Pocket PC 2002 phone edition: Đây là hệ điều hành Pocket PC 2002 với sự thêm
vào việc hỗ trợ cho một số chức năng bên nghành điện thoại.
- Window CE.Net 4.1 và các phiên bản sau đó
b. Các nền tảng mà .Net Compact Framework không hỗ trợ
.Net Compact Framework không được hỗ trợ trên một số nền tảng sau của
Microsoft:
- Các phiên bản 3.0 và sớm hơn của Windows CE: Pocket PC 2000 và Pocket PC
2002 được xây dựng dựa trên Window CE 3.0. Tuy nhiên chúng chỉ là dẫn xuất từ
Window CE 3.0 nên vẫn được hỗ trợ.
- Handheld PC 2000 và các phiên bản trước đó: Các thiết bị Handheld PC có màn
hình lớn hơn các thiết bị Pocket PC nhưng có bàn phím tiện lợi hơn và nguồn
năng lượng lâu hơn. Handheld PC 2000 cũng được xây dựng trên Window CE 3.0
nhưng nó và các phiên bản sớm hơn không được hỗ trợ bởi .Net Compact
Framework.
- Microsoft Smartphone 2002: Smartphone 2002 được xây dựng dựa trên nền tảng

là hệ điều hành Pocket PC 2002, nó có thể chạy được trên các thiết bị có kích
thước nhỏ hơn và màn hình có tính cảm ứng so với các thiết bị chạy trên Pocket
PC.

1.2. Kiến trúc của .Net Compact Framework
.Net Compact Framework không tồn tại đơn lẻ, nó tồn tại dựa trên 3 tầng công
nghệ: Common Language Runtime, trình biên dịch Just-in-time và hệ điều hành Window
CE. Hình 1.1 là sơ đồ kiến trúc mô tả một ứng dụng tương tác với .Net Compact
Framework và các tầng bên dưới như thế nào:










THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


18


Hình 2.1: Sơ đồ mô tả kiến trúc .Net Compact Framework


Trong sơ đồ trên, tầng đầu tiên chính là các thành phần phần cứng bao gồm có
CPU, bộ nhớ , video, màn hình, thành phần kết nối mạng, v..v.
Tất cả các thành phần phần cứng đó được điều khiển bởi tầng thứ 2, hệ điều hành
Window CE.
1.2.1. Common Language Runtime (ngôn ngữ thực thi chung)
Tầng bên trên hệ điều hành Window CE là Common Language Runtiem hay còn
gọi là CLR. Common Language Runtime (CLR) là trung tâm điểm của .NET Framework.
Đây là một "hầm máy" để chạy các tính nǎng của .NET. Nó được xem là nền tảng để
quản lý các ứng dụng đích. Các ứng dụng “native” là các ứng dụng được biên dịch trực
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tỡm hiu cụng ngh .Net Compact Framework

16/4/2008


19
tip sang ngụn ng mỏy m CPU hiu c. Ngc li, cỏc ng dng managed l cỏc
ng dng c biờn dch sang ngụn ng trung gian bytecode hay cũn gi l mó IL.
Mó c biờn dch sang mó IL c gi l mó managed. Mt yu t quan trng
nht ca mó managed l nú khụng c thc thi trc tip bi CPU m nú phi chuyn
sang mó native u tiờn c thc thi.
Cụng vic ca CLR l thc thi mó managed. lm c vic ny, mó managed phi
c chuyn sang mó native. CLR thc hin 3 bc c bn sau chuyn t mó
managed sang mó native v thc thi nú:
a mó IL vo b nh
Mt phn hoc ton b mó IL c chuyn sang mó native c thc thi bi
CPU
Nu mó IL l mt phn ca mó trong file DLL thỡ DLL phi c xỏc nh v a
vo b nh. Sau ú DLL c chuyn sang mó native v thc thi.
1.2.2. Biờn dch mó Managed sang mó Native bi trỡnh biờn dch Just-

In-Time
Trỡnh biờn dch Just-in-time cú nhim v chuyn mó managed sang mó native
mt chng trỡnh managed cú th c thc thi. Cú 2 trỡnh biờn dch JIT trong .Net
Compact Framework ú l "SJIT" v "IJIT.".
IJIT l trỡnh biờn dch sn cú vi mi CPU m c h tr bi .Net Compact
Framework: ARM, MIPS, SHx, v x86. Trỡnh biờn dch IJIT biờn dch mó managed sang
mó mỏy nhanh hn trỡnh biờn dch SJIT nhng mó mỏy c biờn dch ra khụng tt bng
vi mó c sinh ra t trỡnh biờn dch SJIT.
SJIT l trỡnh biờn dch ch cú sn i vi b x lý ARM. Cỏc thit b chy trờn nn tng
Pocket PC thng s dng b x lý ARM.










THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


20

Chương 2. Phát triển ứng dụng với Windown Form
Trong chương này chúng ta sẽ tìm hiểu về:

 Các điều khiển không được hỗ trợ trong .Net Compact Framework
 Thiết kế Form với Visual Studio .Net
 Làm việc với điều khiển Form
 Làm việc với các điều khiển Windows Forms
.Net Compact Framework cung cấp rất nhiều các hàm để cho phép chúng ta xây
dựng giao diện đồ họa người dùng. Tuy nhiên các hàm này là tập con của các hàm được
cung cấp bởi .Net Framework. Trước khi chúng ta đi vào tìm hiểu các điều khiển được hỗ
trợ trong .Net Compact Framework, chúng ta sẽ đi tìm hiều những điều khiển không được
hỗ trợ trong nó.
2.1. Các điều khiển không được hỗ trợ trong .Net Compact Framework
.Net Compact Framework cung cấp một tập con các điều khiển sẵn có trong .Net
Framework.

Dưới đây là danh sách bao gồm các điều khiển không được hỗ trợ trong .Net
Compact Framework:

CheckedListBox

ColorDialog

ErrorProvider

FontDialog

GroupBox

HelpProvider

LinkLabel


NotificationBubble

NotifyIcon

All Print controls

RichTextBox

Splitter
2.2. Các hàm không được hỗ trợ trong .Net Compact Framework
Dưới đây là danh sách các hàm không được hỗ trợ trong .Net Compact Framework:

AcceptButton

CancelButton

AutoScroll

Anchor

Multiple Document Interface (MDI)
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


21

KeyPreview


TabIndex

TabStop

Drag and drop

All printing capabilities

Hosting ActiveX controls
2.3. Thiết kế Form với Visual Studio .Net
Visual Studio .Net cho phép chúng ta có thể tạo giao diện người dùng cho ứng
dụng bằng cách kéo thả các điều khiển lên bề mặt form cần thiết kế. Khi một điều khiển
đã nằm trên form, chúng ta có thể xác định vị trị của điều khiển trên form một cách trực
quan, xác định tập các thuộc tính của các điều khiển thông qua cửa sổ Propertise và tạo
các sự kiện cho các điều khiển.
2.3.1. Cửa sổ thiết kế Form
Khi chúng ta tạo một dự án Smart Device Extension (SDE), là một ứng dụng cửa
sổ, Visual Studio .NET sẽ mở dự án trong phần hiển thị thiết kế. Chúng ta có thể lựa chọn
thiết kế từ menu View để đưa vào khung nhìn của dự án. Hình 3.1 đưa đến cho chúng ta
Form Designer của dự án SDE Pocket PC trong khung nhìn Designer.
Chú ý thành phần mainMenu1 ở phía dưới của cửa sổ thiết kế. Đây là vùng thiết
kế dành riêng cho các điều khiển mà không có sự thể hiện trực quan như là điều khiển
MainMenu, điều khiển ContextMenu, điều khiển Timer, và còn nhiều điều khiển khác.

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008



22


Hình 2.1. SDE Pocket PC trong màn hình Designer view
Khi Form Designer được sử dụng để xây dựng ứng dụng, phương thức
InitializeComponent chứa mã nguồn để xây dựng giao diện của ứng dụng. Mã nguồn này
có ảnh hướng rất lớn đến quá trình thực hiện nếu trên form chứa một số điều khiển ẩn.
Trên .NET Compact Framework yêu cầu các cửa sổ được tạo theo hướng từ trên xuống.
Ví dụ, nếu một panel được đặt trên form và panel đó chứa một số điều khiển, panel đó sẽ
được thêm vào form trước, và sau đó các điều khiển mới được thêm vào panel. Điều này
khác với cách thiết kế form trong Visual Studio .Net. Trong Visual Studio .Net, các cửa
sổ được thiết kế theo hướng từ dưới lên. Ví dụ của đoạn mã thiết kế được sinh ra trong
Visual Studio .Net và .Net Compact Framework dưới đây sẽ cho chúng ta thấy điều này:
Mã được sinh ra trong Visual Studio .Net:
// Đây là đoạn mã được sinh ra từ Form thiết kế trong Visual Studio //.Net. Ở đây
form được xây dựng theo hướng từ dưới lên
// Button thêm vào Panel...Panel thêm vào Form
this.panel1.Controls.Add(this.button1);
this.panel1.Location = new System.Drawing.Point(16,
16);
this.panel1.Size = new System.Drawing.Size(208, 168);
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


23
//

// button1
//
this.button1.Location = new System.Drawing.Point(8,
16);
this.button1.Size = new System.Drawing.Size(72, 24);
this.button1.Text = "button1";
//
// Form1
//
this.Controls.Add(this.panel1);
this.Menu = this.mainMenu1;
this.Text = "Form1";

Mã được sinh ra trong .Net Compact Framwork:

// Form được thiết kế theo hướng từ trên xuống
// Panel thêm vào Form...Button thêm vào Panel...
this.panel1.Location = new System.Drawing.Point(16,
16);
this.panel1.Size = new System.Drawing.Size(208, 168);
this.Controls.Add(this.panel1);
//
// button1
//
this.button1.Location = new System.Drawing.Point(8,
16);
this.button1.Size = new System.Drawing.Size(72, 24);
this.button1.Text = "button1";
//
// Form1

//
this.panel1.Controls.Add(this.button1);
this.Menu = this.mainMenu1;
this.Text = "Form1";

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


24
2.3.2. Cửa sổ ToolBox
Cửa sổ ToolBox bao gồm tất cả các điều khiển của .NET Compact Framework
mà chúng ta có thể thêm vào ứng dụng. Để thêm một điều khiển vào ứng dụng vào lúc
thiết kế rất dễ, chúng ta có thể thực hiện bằng cách kéo một điều khiển từ ToolBox và thả
vào Forms của ứng dụng trong cửa sổ Form Designer. Hình 3.2


Hình 2.2. Cửa sổ ToolBox cho dự án SDE Pocket PC.
2.3.3. Cửa sổ Propertises
Cửa sổ thuộc tính bao gồm tất cả các thuộc tính public của điều khiển đang được
lựa chọn trong cửa sổ Form Designer. Chúng ta có thể thay đổi thuộc tính của điều khiển
bằng cách đưa giá trị vào điều khiển TextBox bên cạnh các tên thuộc tính. Nếu thuộc tính
có số lượng giá trị giới hạn thì hộp drop-down chứa các giá trị có thể của thuộc tính được
hiển thị bên cạnh tên thuộc tính đó. Nếu giá trị của thuộc tính là một tập hợp các đối
tượng hoặc một đối tượng phức tạp,thì ở đó có thể là dấu 3 chấm nằm bên cạnh tên thuộc
tính. Khi click chuột vào dấu 3 chấm đó sẽ hiển thị một hộp thoại cho phép chúng ta sửa
đổi giá giá trị của thuộc tính. Hình 3.3 hiển thị cửa sổ thuộc tính khi một điều khiển
TextBox được chọn.

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN
Tìm hiểu công nghệ .Net Compact Framework

16/4/2008


25


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

2.3.4. Thêm vào các bộ bắt sự kiện
Khi một điều khiển bị tác động, nó sẽ sinh ra một sự kiện để thông báo cho ứng
dụng rằng trạng thái của điều khiển đã bị thay đổi. Để bắt sự kiện được sinh ra bởi điều
khiển, trước hết cần tạo một phương thức chứa đoạn mã thực thi khi sự kiện xảy ra. Sau
đó gắn phương thức đó với sự kiện sinh ra bởi điều khiển. Việc này có thể thực hiện được
thông qua cửa sổ Propertises.
Cửa sổ Propertises chứa danh sách các sự kiện được sinh ra bởi một điều khiển.
Click vào nút Events nằm phía trên cửa sổ Propertises chúng ta sẽ thấy danh sách các sự
kiện đó.Hình 3.4 là hình ảnh của cửa sổ thuộc tính hiển thị các sự kiện được sinh ra bởi
điều khiển Button
THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

×