tai lieu huong dan su dung devx

102
HƯỚNG DN SDNG BCÔNG CDEVEXPRESS CHO ASP.NET LƯU HÀNH NI B2010 BIÊN SON : NGUYN MAI LĨNH PHÒNG CÔNG NGHTHÔNG TIN – ĐẠI HC SƯ PHM TPHCM 30/7/2010

Upload: lee-toney

Post on 01-Dec-2015

965 views

Category:

Documents


13 download

TRANSCRIPT

Page 1: Tai Lieu Huong Dan Su Dung DevX

1

HƯỚNG DẪN SỬ DỤNG BỘ CÔNG CỤ DEVEXPRESS CHO ASP.NET LƯU HÀNH NỘI BỘ

2010

BIÊN SOẠN : NGUYỄN MAI LĨNH PHÒNG CÔNG NGHỆ THÔNG TIN – ĐẠI HỌC SƯ PHẠM TPHCM

30/7/2010

Page 2: Tai Lieu Huong Dan Su Dung DevX

2

MỤC LỤC Phần 1: Cài đặt bộ công cụ DevExpress cho ASP.NET ...................................................... 4

1. Yêu cầu hệ thống ...................................................................................................... 5

1.1. Framework .......................................................................................................... 5

1.2. IDE ...................................................................................................................... 5

1.3. SQL Server ......................................................................................................... 5

2. Các thư mục cần sử dụng ......................................................................................... 5

3. Cấu hình để sử dụng bộ công cụ này trong Microsoft Visual Studio ...................... 7

Phần 2: Hướng dẫn sử dụng một số Control của Component DevExpress ASP.NET ..... 12

1. ASPxMenu ............................................................................................................. 13

1.1. Tổng quan ......................................................................................................... 13

1.1.1. Đặc điểm .................................................................................................... 13

1.1.2. Sub-Menus ................................................................................................. 13

1.1.3. Separators ................................................................................................... 13

1.1.4. Các thư viện liên kết động cần thiết để triển khai ứng dụng ..................... 13

1.2. Ví dụ minh hoạ ................................................................................................. 14

1.2.1. Tạo menu tuỳ ý bằng tay ............................................................................ 14

1.2.2. Tạo menu từ Data source xml .................................................................... 19

2. ASPxNavBar .......................................................................................................... 25

2.1 Tổng quan ............................................................................................................ 25

2.1.1 Đặc điểm .................................................................................................... 25

2.1.2 Tính năng của Group ................................................................................. 26

2.1.3 Các thư viện liên kết động cần thiết để triển khai ứng dụng ..................... 27

2.2 Ví dụ minh hoạ ................................................................................................. 27

3. ASPxTabControl .................................................................................................... 33

3.1. Tổng quan ......................................................................................................... 33

3.1.1 Đặc điểm .................................................................................................... 33

3.1.2 Tính năng của tab ....................................................................................... 33

Page 3: Tai Lieu Huong Dan Su Dung DevX

3

3.1.3 Các thư viện liên kết động cần thiết để triển khai ứng dụng ..................... 33

3.2. Ví dụ minh hoạ ................................................................................................. 34

4. ASPxSchedule ........................................................................................................ 38

4.1. Tổng quan ......................................................................................................... 38

4.1.1. Đặc điểm .................................................................................................... 38

4.1.2. Các thư viện liên kết động cần thiết để triển khai ứng dụng ..................... 43

4.2. Ví dụ minh hoạ ................................................................................................. 44

5. ASPxGridView ....................................................................................................... 58

5.1. Tổng quan ......................................................................................................... 58

5.1.1. Đặc điểm .................................................................................................... 58

5.1.2. Các thư viện liên kết động cần thiết để triển khai ứng dụng ..................... 59

5.2. Ví dụ minh hoạ ................................................................................................. 59

5.2.1. Tạo một Control ASPxGridView với Data Source từ Database Access. .. 59

5.2.2. Tạo lưới trình bày dữ liệu theo dạng Master-Detail .................................. 65

6. XtraReport .............................................................................................................. 84

6.1. Tổng quan ......................................................................................................... 84

6.1.1. Đặc điểm .................................................................................................... 84

6.1.2. Các thư viện liên kết động cần thiết để triển khai ứng dụng ..................... 85

6.2. Ví dụ minh hoạ ................................................................................................. 86

6.2.1. Tạo Web Report đơn giản .......................................................................... 86

6.2.2. Tạo Report dạng bảng và thống kê dữ liệu ................................................ 93

7. ASPxEditors ......................................................................................................... 101

7.1. Tổng quan ....................................................................................................... 101

7.1.1. Đặc điểm .................................................................................................. 101

7.1.2. Một số component trong bộ ASPxEditors ............................................... 101

7.1.3. Các thư viện liên kết động cần thiết để triển khai ứng dụng ................... 102

Page 4: Tai Lieu Huong Dan Su Dung DevX

4

Phần 1: Cài đặt bộ công cụ DevExpress cho ASP.NET 

Trong phần này, chúng tôi sẽ trình bày về các yêu cầu cho việc cài đặt bộ công cụ DevExpress cho ASP.NET và cấu hình cần thiết để có thể sử dụng bộ công cụ này. Môi trường thử nghiệm của chúng tôi là Microsoft Visual Studio 2008, .NET Framework 3.5. Phiên bản cài đặt của DevExpress là v10.1

Nội dung:

• Yêu cầu hệ thống • Các thư mục cần sử dụng • Cấu hình để sử dụng bộ công cụ này trong Microsoft Visual Studio

Page 5: Tai Lieu Huong Dan Su Dung DevX

5

1. Yêu cầu hệ thống 1.1. Framework • Microsoft .NET Framework 2.0 (hoặc cao hơn). • Microsoft .NET Framework 3.5 Service Pack 1 (hoặc cao hơn). • Microsoft .NET Framework 4.0

1.2. IDE Ta có thể sử dụng các IDE sau để phát triển các ứng dụng ASP.NET, sử

dụng các Component DevExpress ASP.NET • Microsoft Visual Studio 2005. • Microsoft Visual Web Developer 2005 Express Edition. • Microsoft Visual Studio 2008. • Microsoft Visual Web Developer 2008 Express Edition. • Microsoft Visual Studio 2010. • Microsoft Visual Web Developer 2010 Express Edition.

1.3. SQL Server

Để chạy các demo của Components DevXpress ASP.NET trên máy local, cần phải cài đặt một trong các version sau của Microsoft SQL Express:

• Microsoft SQL Server 2005 Express Edition (SP3); • Microsoft SQL Server 2008 Express Edition (SP1).

2. Các thư mục cần sử dụng

- Khi cài đặt xong bộ công cụ DevX, các tập tin cần thiết để hoạt động chứa trong thư mục sau: C:\Program Files\DevExpress 2010.1\Components - Đường dẫn chứa các thư viện, các file DLL và XML để triển khai ứng dụng: C:\Program Files\DevExpress 2010.1\Components\Sources\ DevExpress.DLL - Các Sample mẫu chứa trong thư mục sau: C:\Users\Public\Documents\DevExpress 2010.1 Demos\Components - Để xem các demo mẫu, các tài liệu hướng dẫn chi tiết, các video hướng dẫn thao tác, ta vào trong DemoCenter như hình dưới:

Page 6: Tai Lieu Huong Dan Su Dung DevX

6

Hình 1.1 Truy cập vào DemoCenter của DevX

Đây là giao diện của DemoCenter:

Page 7: Tai Lieu Huong Dan Su Dung DevX

7

Hình 1.2: Giao diện DemoCenter của DevX

3. Cấu hình để sử dụng bộ công cụ này trong Microsoft Visual Studio

Khi cài đặt xong bộ Công cụ DevX, ứng dụng sẽ tự thêm các Components vào ô Toolbox của Microsoft Visual Studio. Trong trường hợp trong ô toolbox không xuất hiện các Components của DevX ta có thể chạy một tool kèm theo khi cài đặt DevX đó là tool Toolbox Creator.

Page 8: Tai Lieu Huong Dan Su Dung DevX

8

Hình 1.3: Truy cập công cụ ToolboxCreator của DevX

Lưu ý:

- Các Control của Component DevExpress ASP.NET bắt đầu bằng cụm ASPx. Ví dụ như ASPxMenu, ASPxGridView, ASPxNavPanel…. - Từ phiên bản v10.1, khi một Web Control được đưa từ Toolbox vào trong màn hình Designer của trang web, một section sẽ được tự động tạo ra bên trong tập tin Web.config. Section này cho phép ta tuỳ chọn cấu hình

Page 9: Tai Lieu Huong Dan Su Dung DevX

9

theo từng chức năng của mỗi control, nội dung section đó như sau:

Đồng thời, khi control được kéo thả vào trong trang web thì assemply tương ứng sẽ được tự động đăng ký và thêm vào đầu của trang(xem kiểu Source View) bởi dòng sau, ở đây ta ví dụ thêm vào một control ASPxGridView :

<%@ Register Assembly="DevExpress.Web.ASPxGridView.v10.1, Version=10.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxGridView" TagPrefix="dx" %>

Tương ứng lúc này, sẽ có một file license.licx được tự động thêm vào project, trong folder Properties và nội dung của file sẽ có dòng tương ứng sau:

DevExpress.Web.ASPxGridView.ASPxGridView, DevExpress.Web.ASPxGridView.v10.1 , Version=10.1.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

Page 10: Tai Lieu Huong Dan Su Dung DevX

taNội d

a đã thao tá

Hình

dung file licc với nhiều

h 1.4: Vị trí

cense.licx cóu control):

10

file license

ó dạng như

e.licx trong

sau(Nội du

project.

ung bên dướ

ới có được kkhi

Page 11: Tai Lieu Huong Dan Su Dung DevX

11

Hình 1.5: Nội dung file license.licx

Page 12: Tai Lieu Huong Dan Su Dung DevX

12

Phần 2: Hướng dẫn sử dụng một số Control của Component DevExpress ASP.NET 

Trong phần này chúng tôi sẽ trình bày các thông tin về một số Control thường sử dụng trong việc thiết kế một website cũng như cách sử dụng các Control này. Bên cạnh đó sẽ là những ví dụ minh hoạ cách thao tác với các control trên để tạo ra các ứng dụng đơn gian cũng và nâng cao.

Nội dung

• ASPxMenu : Giới thiệu và minh hoạ • ASPxNavBar : Giới thiệu và minh hoạ • ASPxTabControl : Giới thiệu và minh hoạ • ASPxScheduler : Giới thiệu và minh hoạ • ASPxGridView : Giới thiệu và minh hoạ • XtraReport : Giới thiệu và minh hoạ • ASPxEditors : Giới thiệu

Page 13: Tai Lieu Huong Dan Su Dung DevX

13

1. ASPxMenu 1.1. Tổng quan

1.1.1. Đặc điểm Bộ ASPxMenu gồm hai control đơn lẻ là ASPxMenu và

ASPxPopupMenu, bổ trợ cho việc tạo các Menu cố định và cả các Menu ngữ cảnh động.

• Đặc điểm Control: o Có thể tạo menu từ Datasource bằng cách khai thác các cấu trúc tập tin XML hay các bảng của Database. o Có thể thiết lập một Menu thu hút một cách dễ dàng chỉ sau vài cái click chuột. o Có thể thay đổi thể hiện tuỳ thuộc vào từng trạng thái, thông qua việc tuỳ chỉnh các thuộc tính hay chỉnh sửa các file CSS. o Có thể chèn các hình ảnh cần thiết trước phần Text của từng Item trong menu, có thể tuỳ chỉnh vị trí của Text so với hình ảnh. Có thể tuỳ chỉnh việc xử lý sự kiện phía người dùng

• Đặc điểm phía người dùng: o Người dùng có thể sử dụng những sự kiện phía người dùng để tuỳ chỉnh một tác vụ cho việc ẩn hoặc hiện Sub-Menu và khi người dùng click vào Menu.

1.1.2. Sub-Menus • Control dạng Menu mặc định hiện bóng mờ dưới sub-Menu, ta có thể tắt chức năng đó bằng việc tuỳ chỉnh thuộc tính ASPxMenuBase.ShowSubMenuShadow. Tương như như cho PopupMenu. • Ta cũng có thể tuỳ chỉnh tốc độ mở và đóng các Sub-Menu. • Ta có thể tuỳ chỉnh cho hiện các ký hiệu ở các menu cấp lớn hơn cho biết là có các sub-menu ở đó, mặc định là có hiện.

1.1.3. Separators • Ta có thể thêm các đoạn chia giữa các Item với nhau trong Menu bằng, hoặc các Item cùng một Item cha. Các chức năng này có thể tuỳ chỉnh thông qua thuộc tính ASPxMenuBase.AutoSeparators . Bên cạnh đó, ta có thể tuỳ chỉnh cho hiện các đoạn chia ở bất cứ nơi nào mình muốn.

1.1.4. Các thư viện liên kết động cần thiết để triển khai ứng dụng

Page 14: Tai Lieu Huong Dan Su Dung DevX

1.2. 1.Ta

B

To

• Decác chức • Denăng liên • Delớp để thựphối hợp.• ĐưDevExprVí dụ mi

2.1. Tạa cần tạo ra

1: Đưa ConTrong củ

oolbox vào

evExpress.Wnăng của cá

evExpress.Dquan tới vi

evExpress.Wực thi một t ường dẫn nress 2010.1\nh hoạ ạo menu tua Menu như

Hình 2.1

ntrol ASPxủa sổ Desithẻ div bên

14

Web.vX.Yác Control tData.vX.Yiệc quản lý Web.ASPxtập các chứ

nơi chứa cá\ Compone

uỳ ý bằng taư hình sau:

.1 : Menu n

xMenu vàoign view, n trong

.dll: Chứatrong bộ AS

Y.dll: Chứa dữ liệu .

xThemes.vXc năng về tu

ác thư việnents\Source

ay

ngang và dọ

o giao diệnkéo thả co

các lớp thSPxMenu. các lớp thự

X.Y.dll: Chuỳ chỉnh gi

n này: C:\Pes\ DevExp

ọc

omponent

hực thi toà

ực thi các

hứa toàn bộiao diện và

Program Fpress.DLL

ASPxMen

n bộ

chức

ộ các cách

Files\

u từ

Page 15: Tai Lieu Huong Dan Su Dung DevX

B2

Hình

2 : Thêm cChọn Me

ên phải của

Hìn

h 2.1.2 : Co

các Item chenu đang hi

Menu ở AS

nh 2.1.3 : Và

15

ontrol ASPx

ho Menu iển thị trên SPxMenu T

ào chức năn

xMenu trên

màn hình, Tasks -> C

ng thêm mớ

n màn hình D

nhấn thẻ thChọn mục It

ới các Item

Design

hông minh tem

cho Menu

nằm

Page 16: Tai Lieu Huong Dan Su Dung DevX

16

Lúc này, hiện lên của sổ ASPxMenu MenuItem Editor. Chọn Add an Item (Icon đầu tiên bên trái) để thêm một Item mới:

Hình 2.1.4 : Thêm Item mới cho Menu

Chọn Item vừa mới thêm, trong phần Properties bên phải, chọn

Nhóm Misc, chọn mục Text và đổi tên Item thành Home.

Page 17: Tai Lieu Huong Dan Su Dung DevX

17

Hình 2.1.5 : Đặt tên cho Item

Tương tự như thế, ta tạo ra thêm các Item cho Menu theo cấu trúc

như sau, lưu ý Scanners và Printers là con của Products, nên ta cần chọn chức Năng Add a child Item.(Icon thứ 2 từ trái sang)

Hình 2.1.6 : Thêm các Item cho Menu

Page 18: Tai Lieu Huong Dan Su Dung DevX

18

- Để thêm Icon trước mỗi Item, trong Properties ta chọn Nhóm Image-> Image->URL rồi chọn Icon cần đặt trước Item đó trong cửa sổ Dialog mở ra.

- Để điều hướng Menu, trong Properties ta chọn nhóm Misc->NavigateURL rồi chọn trang để điều hướng tới.

Chọn OK để hoàn tất việc thêm các Item bằng tay Mặc định Menu mới tạo sẽ nằm ngang, muốn Menu nằm dọc ta chỉ

cần set thuộc tính Orientation của Menu thành Vertical B3: Tuỳ chỉnh một số thuộc tính của Menu

Tạo các ngăn cách giữa các Item: trong của sổ Design View, chọn Menu, trong cửa sổ Properties, chọn chức năng AutoSeparators -> chọn thuộc tính RootOnly để tạo ra các ngăn cách giữa các Menu.

Hình 2.1.7 : tạo ngăn cách giữa các Menu

Orientation: chiều của Menu, Horizontal tương ứng với nằm ngang, Vertical tương ứng với nằm dọc.

Horizontal align, Vertical Align: canh chỉnh vị trí tương ứng với menu ngang hay dọc.

ItemImagePosition: Vị trí của Image so với Item, xếp ngang hàng hoặc trên dưới

Hình 2.1.8 : Image nằm trên Item

Page 19: Tai Lieu Huong Dan Su Dung DevX

HW…

1.

D

B

B2

Tạ>Etro

Height: ChiềWidth: chiều….

2.2. Tạ

Ta tạo mevExpress.

Hình

1: Đưa con

2: Thêm v

ại thư mụcExisting Iteong Sample

ều cao của Mu rộng của M

ạo menu từmenu từ dat

Menu sẽ có

h 2.1.9 : Me

ntrol ASPx

vào DataSo

c App_Datem…, thême Code của

19

Menu Menu

ừ Data sourta Source Xó dạng như

enu có Data

Menu vào

ource XML

ta của projm vào file m

DevExpres

rce xml XML có sẵư sau :

a Souce là fi

giao diện (

L

ject, ta nhấmenu-strucss)

ẵn trong sa

ile XML

(Tương tự n

ấn chuột phcture.xml (

ample code

như trên)

hải, chọn A(file này có

e của

Add-ó sẵn

Page 20: Tai Lieu Huong Dan Su Dung DevX

Fi

<?<r Is Is Is Is Is Is Is Is Is

ile menu_st

?xml versiroot> <menuitem</menuite<menuitem

sSeparator</menuite<menuitem

sSeparator <menuit

sSeparator <menu

sSeparator </men <menu

sSeparator </men <menu </men <menu

sSeparator </men </menui</menuite<menuitem

sSeparator</menuite<menuitem

sSeparator <menuit

sSeparator

Hình 2.1.

tructure.xm

ion=”1.0”

m Text=”Mem> m Text=”Sr=”on”> em> m Text=”Mr=”false”tem Text=r=”false”uitem Texr=”false”nuitem> uitem Texr=”false”nuitem> uitem Texnuitem> uitem Texr=”false”nuitem> item> em> m Text=”Sr=”1”> em> m Text=”Mr=”false”tem Text=r=”false”

20

10 : Thêm m

ml này có n

” encoding

Menu item

Separator

Menu item ”> =”Menu ite”> xt=”Menu i”>

xt=”Menu i”>

xt=”” Valu

xt=”Menu i”>

Separator

Menu item ”> =”Menu ite”>

mới file .xm

nội dung nh

g=”utf-8”

1” Value=

on” Value

2” Value=

em” Value=

item 1” Va

item 2” Va

ue=”2” IsS

item 3” Va

1” Value=

3” Value=

em” Value=

ml vào menu

hư sau:

?>

=”1” IsSe

e=”Separa

=”2”

=”2”

alue=”1”

alue=”2”

Separator

alue=”3”

=”Separat

=”3”

=”1”

u.

eparator=”

atorOn”

r=”true”>

tor1”

”0”>

Page 21: Tai Lieu Huong Dan Su Dung DevX

21

</menuitem> <menuitem Text=”Menu item” Value=”3” IsSeparator=”false”> </menuitem> </menuitem> </root>

B3: Chọn file menu_structure.xml làm data source cho Menu.

Từ màn hình Design chọn Menu, chọn thẻ thông minh bên phải của Menu để mở ASPxMenu Tasks. Trong mục Choose Data Source tại ô combobox kế bên, nhấp vào và chọn <New Data Souce>

Hình 2.1.11 : Chọn Data Source cho Menu

Lúc này hiện lên cửa sổ Data Source Configuration Wizard, chọn XML File -> OK

Page 22: Tai Lieu Huong Dan Su Dung DevX

22

Hình 2.1.12 : Chọn XML file làm Data Source

Tại màn hình kế, trong mục Data file, ta nhấp vào nút Browse để chọn file

Page 23: Tai Lieu Huong Dan Su Dung DevX

23

Hình 2.1.13 : Chọn đường dẫn file

Trong thư mục App_Data ở màn hình kế, ta chọn file menu_structure.xml -> OK

Hình 2.1.14 : Chọn file xml đã thêm vào từ đầu

Page 24: Tai Lieu Huong Dan Su Dung DevX

dTrong ph

dung từ thà

Lúc này

hần Xpath eành phần Me

H

ta có được

Hình

expressionenuItem củ

Hình 2.1.15

Menu từ vi

h 2.1.9 : Me

24

ta gõ vào “ủa file này là

5 : Nhập vào

iệc khai thá

enu có Data

“root/menuàm các item

o Xpath exp

c datasourc

a Souce là fi

uitem” để km cho Menu

pression

ce là file XM

ile XML

khai thác nộu ->OK

ML.

ội

Page 25: Tai Lieu Huong Dan Su Dung DevX

25

2. ASPxNavBar 2.1 Tổng quan

2.1.1 Đặc điểm

ASPxNavBar cho phép ta tạo ra những thông tin ngắn gọn, đặt trong các ô điều hướng (Navigation bar), tạo nên một giao diện giống như của Microsoft Outlook Sidebar hay Window Explorer. Control này cho phép ta thay đổi nhiều tuỳ chọn, và đặt ở bất kỳ nơi nào mong muốn trong trang web. Giống như các Control khác của DevExpress ASP.NET, nó hỗ trợ mạnh mẽ công nghệ AJAX và CSS.

• Các thành phần trong một NavBar

Hình 2.2.1: Cấu trúc của một Navbar

Group: Gồm có Group Header và Group Content

Group Header: làm header cho phần nội dung trong Group. Có thể dùng để mở và đóng group

Group Header Image: hình ảnh hiển trong Group Header

Group Content: Có chứa các Item.

Group Expand Button: nằm bên trong Group Header, dùng để mở và đóng Group.

Page 26: Tai Lieu Huong Dan Su Dung DevX

26

Item: là phần nội dung bên trong Group Content.

Item Image: Hình ảnh đại diện cho Item.

• Đặc điểm của Control

o Có thể tạo ASPxNavBar từ Datasource để tạo nên các group và các item bằng cách khai thác các cấu trúc tập tin XML. o Ta có thể dễ dàng thay đổi giao diện thể hiện bằng việc chỉnh sửa các lớp CSS. o Để có hỗ trợ AJAX ta set thuộc tính EnableCallbacks thành True, lúc này ASPxNavBar chỉ load nội dung của Group được mặc định mở chứ không load hết toàn bộ nội dung của các Group khi hiển thị ở phía người dùng. Khi người dùng nhấn chọn mở các Group, nội dung bên trong sẽ được load qua sự kiện callbacks. Một khi nội dung một group đã được load lên rồi, người dùng có thể mở hoặc đóng tới Group này mà không phải gọi sự kiện callbacks hay postback nữa. o Hình ảnh có thể đi chung với các Items. o Có thể tuỳ chỉnh vị trí người dùng click vào Item để thực thi chức năng của Item đó.(Text, hình ảnh hay cả hai). o Ta có thể tuỳ chỉnh vị trí của hình ảnh so với text của Item.(Trên, dưới, trái, phải). o Ta cũng có thể tô đậm, đánh dấu từng Item.

2.1.2 Tính năng của Group • Dễ dàng chỉnh sửa, thay đổi với trình chỉnh sửa thông minh. • Có thể tuỳ chỉnh nút đóng/mở cho riêng từng group hay tất cả các group trong một NavBar. • Có thể dùng hình ảnh thay cho nút đóng mở group. • Có thể để link cho một Group Header. • Group Header có thể vừa có Text và hình ảnh. • Có thể không cho người dùng mở một group nào đó tuỳ vào hoàn cảnh. • Có thể chỉ cần rê chuột tới hoặc click để đóng hoặc mở group.

Page 27: Tai Lieu Huong Dan Su Dung DevX

27

2.1.3 Các thư viện liên kết động cần thiết để triển khai ứng dụng

• DevExpress.Web.vX.Y.dll: Chứa các lớp thực thi toàn bộ các chức năng của các Control trong bộ ASPxNavBar. • DevExpress.Data.vX.Y.dll: Chứa các lớp thực thi các chức năng liên quan tới việc quản lý dữ liệu . • DevExpress.Web.ASPxThemes.vX.Y.dll: Chứa toàn bộ các lớp để thực thi một tập các chức năng về tuỳ chỉnh giao diện và cách phối hợp. • Đường dẫn nơi chứa các thư viện này: C:\Program Files\ DevExpress 2010.1\ Components\Sources\ DevExpress.DLL

2.2 Ví dụ minh hoạ

Ta cần tạo ra NavBar như hình sau:

Hình 2.2.2 : APSxNavbar

B1: Đưa control ASPxNavBar vào giao diện

Page 28: Tai Lieu Huong Dan Su Dung DevX

28

Trong của sổ Design view, kéo thả component ASPxNavBar từ Toolbox vào thẻ div bên trong

Hình 2.2.3 : Control ASPxNavBar trên màn hình Design

B2: Thêm các Group trên NavBar

Chọn ASPxNavBar1 trên màn hình Design, chọn thẻ thông minh bên phải ->chọn Groups , hiện lên cửa sổ ASPxNavBar Groups Editor

Page 29: Tai Lieu Huong Dan Su Dung DevX

29

Hình 2.2.4 : màn hình thực hiện chức năng thêm các Group mới

Chọn Add an Item để thêm một Group mới, thay đổi thuộc tính Text để đặt tên cho từng Group theo cấu trúc sau. Ta cũng lưu ý một số thuộc tính của Group như là NavigateURL: điều hướng, HeaderImage: Hình ảnh đại diện cho Group…

Page 30: Tai Lieu Huong Dan Su Dung DevX

30

Hình 2.2.5 : Thêm các Group cho NavBar

B3: Thêm các nội dung bên trong một Group:

Chọn Group Wikipedia, trong phần Properties, nhóm Misc-> mục Items chọn vào nút browse bên cạnh (Collection). Hiện lên của sổ ASPxNavBar Items Editor. Ở đây là ta đang thực hiện việc tuỳ chỉnh các Item bên trong Group Wikipedia.

Page 31: Tai Lieu Huong Dan Su Dung DevX

31

Hình 2.2.6 : Tuỳ chỉnh nội dung bên trong một Group

Chọn Add an Item để thêm một Item mới. Ở đây ta chú ý các thuộc tính Text:Để đặt tên Item, NavigateURL: Điều hướng, Image: hình ảnh đại diện cho Item. Tạo Các Item như sau:

Page 32: Tai Lieu Huong Dan Su Dung DevX

32

Hình 2.2.7 : Các Items bên trong một Group

Làm tương tự đối với Group Search, Lưu ý thuộc tính ItemImagePosition để định vị trí của Text so với hình ảnh đại diện. Chọn OK để tắt cửa sổ ASPxNavBar Groups Editor. Hoàn tất việc tuỳ chỉnh nội dung của NavBar

Page 33: Tai Lieu Huong Dan Su Dung DevX

33

3. ASPxTabControl 3.1. Tổng quan

3.1.1 Đặc điểm

Bộ ASPxTabControl bao gồm 2 thành phần nhỏ, giúp ta tạo nên các tab cho trang web của mình. Có thể dùng thành phần APSxTabControl chỉ để thể hiện các Tab hoặc dùng ASPxPageControl để tạo các tab cùng với nội dung bên trong của từng tab. Cả 2 thành phần này đều được hỗ trợ AJAX qua phương thức Callbacks.

• Đặc điểm của Control o Các templates có thể xác định cho từng tab trong cả trạng thái kích hoạt hay không kích hoạt. o Có thể thay đổi giao diện, sự thể hiện của từng thành phần một cách trực tiếp qua các thuộc tính hoặc qua CSS. o Nhiều định dạng phong phú, dễ dàng chọn và thay đổi. o Hỗ trợ hai cách để mở một tab: click chuột hoặc chi rê chuột lên trên tab. o Để có hỗ trợ AJAX ta set thuộc tính EnableCallbacks thành True, lúc này ASPxPageControl chỉ load nội dung của tab được mặc định mở chứ không load hết toàn bộ nội dung của các tab khi hiển thị ở phía người dùng. Khi người dùng nhấn chọn mở các tab, nội dung bên trong sẽ được load qua sự kiện callbacks. Một khi nội dung một tab đã được load lên rồi, người dùng có thể mở hoặc đóng tab này mà không phải gọi sự kiện callbacks hay postbacks nữa.

3.1.2 Tính năng của tab • Dễ dàng chỉnh sửa, thay đổi với trình chỉnh sửa thông minh. • Có thể tuỳ chỉnh khoảng cách giữa các tab. • Dễ dàng tuỳ chỉnh vị trí của các tab. • Có thể chèn hình ảnh đại diện cho từng tab.

3.1.3 Các thư viện liên kết động cần thiết để triển khai ứng dụng

• DevExpress.Web.vX.Y.dll: Chứa các lớp thực thi toàn bộ các chức năng của các Control trong bộ ASPxTabControl.

Page 34: Tai Lieu Huong Dan Su Dung DevX

3.2. Ta tạo r

• Denăng liên • Delớp để thựphối hợp.• ĐưDevExpr

Ví dụ mira Tab có h

evExpress.Dquan tới vi

evExpress.Wực thi một t ường dẫn nress 2010.1\

nh hoạ hình như sau

Hình

34

Data.vX.Yiệc quản lý Web.ASPxtập các chứ

nơi chứa cá\ Compone

u:

2.3.1 : ASP

Y.dll: Chứa dữ liệu .

xThemes.vXc năng về tu

ác thư việnents\Source

PxTabCont

các lớp thự

X.Y.dll: Chuỳ chỉnh gi

n này: C:\Pes\ DevExp

trol

ực thi các

hứa toàn bộiao diện và

Program Fpress.DLL

chức

ộ các cách

Files\

Page 35: Tai Lieu Huong Dan Su Dung DevX

35

B1: Đưa control ASPxNavBar vào giao diện Trong của sổ Design view, kéo thả component ASPxPageControl từ

Toolbox vào thẻ div bên trong

Hình 2.3.2 : Control ASPxPageControl trên màn hình Design

B2: Thêm các tabpage

Chọn ASPxPageControl1 , Nhấn thẻ thông minh bên phải bên phải của Control để mở ASPxPageControl Tasks -> Chọn mục Tabpages để thêm các Tab mới

Hình 2.3.3: Chọn tabpages để thêm mới các tab

Page 36: Tai Lieu Huong Dan Su Dung DevX

Lúc này Item để theo cấu để chèn h

Sau kTabPTa đưkích t

Hiện lên củthêm một Ttrúc sau. T

hình đại diệ

khi hoàn tPages Editoược màn hìnthước của c

Hình 2.3

ủa sổ ASPxTab mới: thTa cũng lưuện cho từng

Hình 2.3

ất, Chọn Oor nh như sau,các tab

.5 : Các tab

36

xPageConthay đổi thuu ý một số tg tab.

3.4 : Tạo m

OK để th

, thay đổi th

bpage đã tạo

trol TabPaộc tính Texthuộc tính c

ới các Tabp

hoát khỏi c

huộc tính W

o trên màn

ages Editorxt để đặt têncủa Tab nh

page

cửa sổ ASP

Width và He

hình Design

r. Chọn Adn cho từng

hư là TabIm

PxPageCon

eight để thay

n

dd an Tab

mage

ntrol

y đổi

Page 37: Tai Lieu Huong Dan Su Dung DevX

37

B3: Tuỳ chỉnh nội dung bên trong từng tab

Bên trong từng tab, ta có thêm các nội dung tuỳ ý cũng bằng cách kéo thả, ở đây ta thử thêm vào các hình ảnh:

Hình 2.3.6 : Tuỳ chỉnh nội dung bên trong từng tabpage

Ta cũng có thể thêm các control như ASPxGridView vào nội dung bên trong tab. Thao tác với GridView bên trong này tương tự như ASPxGridView bình thường.(Xem thêm về control ASPxGridView)

Lưu ý: để mỗi lần load trang chỉ load nội dung của tab mặc định ta phải kích hoạt AJAX bằng cách chọn ASPxPageControl-> set thuộc tính EnableCallBacks=True.

Page 38: Tai Lieu Huong Dan Su Dung DevX

38

4. ASPxScheduler 4.1. Tổng quan

4.1.1. Đặc điểm

ASPxScheduler giúp tạo ra ứng dụng web giống ứng dụng Calendar của Microsoft Outlook. Ta có thể tạo các sự kiện (Appointment), các tài nguyên(Resource) tương ứng theo ngày, theo tuần hay tháng, di chuyển qua lại giữa các ngày. Control này còn có hỗ trợ AJAX thông qua sự kiện callbacks.

Bộ ASPxScheduler có rất nhiều thành phần trong đó có Scheduler và Date Navigator, cho phép thực hiện nhiều tác vụ đến dữ liệu. Dưới đây là một sô tính năng chính của ASPxScheduler:

• Những tính năng của ASP.NET o Tương thích với nhiều trình duyệt: Internet Explorer 5.5 +, Mozilla Firefox, Netscape 7.2+, Opera 8+, Safari.. o Hỗ trợ AJAX: ta có thể cập nhật nội dung của Control thông qua phương thức callbacks, không cần thiết phải load lại toàn bộ trang. o Tương tác với người dùng rất đa dạng. o Hỗ trợ Cookies: cho phép người viếng thăm trang web và thiết lập các chính sách riêng tư về lập lịch.

• Những chế độ xem (5 trong 1) o Day View: xem chi tiết các Appointment trong một ngày cụ thể.

Page 39: Tai Lieu Huong Dan Su Dung DevX

39

Hình 2.4.1 : Xem scheduler dạng Day View

o Work Week View: Thể hiện các Appointment trong các ngày làm việc một tuần cụ thể hoặc nhiều tuần.

Hình 2.4.2 : Xem Scheduler dạng Work Week View

Page 40: Tai Lieu Huong Dan Su Dung DevX

o xá

o thôso dù

Week Vc định.

Hình 2.4.3Month

ông tin các với các ki

ùng có thể lê

40

View: Thể

3 : Xem Schh View: Th

Appointmeiểu hiển thên những kế

hiện các A

heduler dạnhể hiện cácent hiển thịị kia. Tuy ế hoạch dài

Appointment

ng Week Vi Appointmị theo thángnhiên nó c

i hạn.

t trong một

iew ment theo thg ít chi tiết cho phép n

tuần

háng, nhất

người

Page 41: Tai Lieu Huong Dan Su Dung DevX

Ho gia

Hình 2.4.4: Timeli

an biểu.

41

Xem Scheine View: T

duler dạng Thể hiện cá

Month Vieác Appointm

ew. ments theo

thời

Page 42: Tai Lieu Huong Dan Su Dung DevX

42

Hình 2.4.5 : xem Scheduler dạng Timeline

• Khai thác dữ liệu o Khai thác từ Database: Các công việc thực hiện có thể được truy xuất và lưu trong database. o Khai thác các trường tuỳ chọn cho vào Appointment: Ta có thể tuỳ chọn hiển thị thông tin của từng trường cụ thể lên Appointment.

• Vấn đề Việt hoá Scheduler: o Khi thực hiện kéo thả Control ASPxScheduler vào trang web, một loạt các Template dạng UserControl được tạo ra, mỗi control tương ứng với một form chức năng bên trong một ASPxScheduler. Mặc định hiển thị trên Scheduler là tiếng Anh, do đó để hiển thị tiếng việt toàn bộ Scheduler và những form chức năng thì ta vào từng control và đổi tên các thành phần hiển thị trong đó sang tiếng Việt bằng cách thay đổi thuộc tính Display Text của từng thành phần. Ta xem ví dụ dưới đây là form để thêm một Appointment mới trong Scheduler

Page 43: Tai Lieu Huong Dan Su Dung DevX

43

Hình 2.4.6: Form thêm mới hay chỉnh sửa một Appoinment.

Ta dễ dàng thay đổi thuộc tính Text của các Label hay button thành tiếng Việt.

4.1.2. Các thư viện liên kết động cần thiết để triển khai ứng dụng

• DevExpress.Web.vX.Y.dll: Chứa các lớp thực thi toàn bộ các chức năng của các Control trong bộ ASPxScheduler. • DevExpress.Data.vX.Y.dll: Chứa các lớp thực thi các chức năng liên quan tới việc quản lý dữ liệu . • DevExpress.Web.ASPxThemes.vX.Y.dll: Chứa các lớp để thực thi một tập các chức năng về tuỳ chỉnh giao diện và cách phối hợp. • DevExpress.Web.ASPxEditors.vX.Y.dll: Chứa các lớp để thực thi các chức năng để chỉnh sửa dữ liệu trên Scheduler. • DevExpress.Web.ASPxScheduler.vX.Y.dll: Chứa các Control ASPxScheduler, ASPxSchedulerStorage, ASPxDateNavigator, cùng nhiều Control khác nữa trong bộ ASPxScheduler. • DevExpress.XtraScheduler.vX.Y.Core.dll: chứa các lớp cơ bản để thực thi các chức năng chính của bộ ASPxXtraScheduler và ASPxScheduler • Đường dẫn nơi chứa các thư viện này: C:\Program Files\ DevExpress 2010.1\ Components\Sources\ DevExpress.DLL

Page 44: Tai Lieu Huong Dan Su Dung DevX

44

4.2. Ví dụ minh hoạ Ta tạo ra Scheduler như hình sau:

Hình 2.4.7: ASPxScheduler

B1: Đưa control ASPxNavBar vào giao diện

Trong của sổ Design view, kéo thả component ASPxScheduler từ Toolbox vào thẻ div bên trong. Lúc này sẽ có một số Templates được tự động thêm vào project

Page 45: Tai Lieu Huong Dan Su Dung DevX

45

Hình 2.4.8 : Các Template đi kèm với Control ASPxScheduler

Nhấn Close để thoát cửa sổ này.

Lúc này trong box Solution ta sẽ thấy sẽ có thêm một folder mới là DevExpress, bên trong là folder ASPxSchedulerForm, bên trong folder này là các Template vừa được thêm vào Project. Lưu ý là các Template này là để ta thao tác với Scheduler, nếu xoá đi bất kỳ một Template nào cũng gây ra lỗi cho ứng dụng.

Page 46: Tai Lieu Huong Dan Su Dung DevX

46

Hình 2.4.9: ASPxScheduler trên màn hình Design View

Control ASPxScheduler này có các chể độ xem các ghi chú theo ngày(Day), theo tuần(Work Week), theo tháng(Month) và Timeline cho các công việc này. Khi muốn thêm một ghi chú mới hay thực hiện một tác vụ nào đó ta chỉ việc click chuột phải vào ngày, hoặc giờ trong ngày…

Ta cũng có thể cài đặt chi tiết thời gian của một ngày theo các mức 60 phút, 30 phút.. đến 5 phút.

Page 47: Tai Lieu Huong Dan Su Dung DevX

47

Hình 2.4.10 : Scheduler khi chạy

Giả sử Khi chọn thêm mới một Appointment mới trong một ngày, sẽ hiện lên một form sau

Hình 2.4.11 : Màn hình thêm mới một Appointment

Điền vào các nội dung trong form rồi nhấn OK để thêm một Appointment mới.

Tuy nhiên để có thể thực hiện việc thêm một Appointment mới thành công, ta cần tạo ra datasource để lưu trữ những thông tin này.

B2: Thêm và cấu hình Data Source

Page 48: Tai Lieu Huong Dan Su Dung DevX

Ta sửsẵn t

Thêm

TronDesinhấn

ử dụng Dattrong thư m

m database

Hìn

ng ô Toolboign view. Đn chọn thẻ th

tabase Carmục cài đặt c

CarsDB.m

nh 2.4.12: T

ox, nhóm DĐổi tên thhông minh

48

sDB.mdb đcủa DevX.

mdb vào fol

Thêm vào D

Data, kéo thành DataSvà chọn Co

để khai thác

der App_D

Data Source

thả AccessDSourceAppofigure Dat

c dữ liệu. D

Data của Pro

e CarsDB.m

DataSourcep. Chọn Dta Source.

Database nà

oject:

mdb

e vào màn ataSourceA

ày có

hình App,

Page 49: Tai Lieu Huong Dan Su Dung DevX

49

Hình 2.4.13: Cấu hình Data Source

Ta lựa chọn DataSource là CarsDB.mdb tương ứng. Nhấn Next.

Trong ô Configure the Select Statement, Chọn bảng CarScheduling và nhấn chọn các trường cần hiển thị như sau:

Page 50: Tai Lieu Huong Dan Su Dung DevX

50

Hình 2.4.14 : Cấu hình chọn table và các trường tương ứng

Click chọn nút Advance và nhấn vào tuỳ chọn: Generate Insert, Update, and Delete statements

Page 51: Tai Lieu Huong Dan Su Dung DevX

51

Hình 2.4.14 : Tuỳ chọn nâng cao tạo ra các câu lệnh SQL

Nhấn chọn OK ->Next-> Finish để hoàn tất việc cấu hình DataSourceApp. Tạo thêm một AccessDataSource đặt tên là DataSourceRes, cũng cấu hình chọn Database CarsDB.mdb, phần chọn bảng ta chọn bảng Cars và chọn các trường hiển thị như sau:

Hình 2.4.15 : Cấu hình chọn table và các trường tương ứng

Page 52: Tai Lieu Huong Dan Su Dung DevX

52

B3: Tham chiếu Data Source vào ASPxScheduler tương ứng.

Chọn ASPxScheduler1, nhấp chọn thẻ thông minh, trong phần Appointments Data Source chọn DataSourceApp, trong phần Resources Data Source chọn DataSourceRes.

Hình 2.4.16 :Tham chiếu các Data Source vào ASPxScheduler

Set thuộc tính Storage.Appointments.AutoReload = true.

Thuộc tính Storage.Appointments.Mappings ta điều chỉnh như sau:

Page 53: Tai Lieu Huong Dan Su Dung DevX

53

Hình 2.4.17 : Mapping các trường của Appointment

Thuộc tính Storage.Resources.Mappings ta điều chỉnh như sau:

Page 54: Tai Lieu Huong Dan Su Dung DevX

54

Hình 2.4.18 : Mapping các trường của Resource

Để có thể thêm được record mới trong cơ sở dữ liệu, cụ thể là để lưu một Appoinment mới, trường ID phải là duy nhất, vì trường này ta để chế độ tăng tự động(Auto Indentity), để thực hiện được điều này ta sử dụng câu lệnh SQL “SELECT @@IDENTITY”. Chọn DataSourceApp, trong thuộc tính InsertQuery ta thực hiện như sau:

Page 55: Tai Lieu Huong Dan Su Dung DevX

55

Hình2.4.19 : Tuỳ chỉnh Insert Query

Nhấn OK để hoàn tất việc cấu hình và tham chiếu các Data Source vào ASPxScheduler.

B4: Xây dựng các phương thức để xử lý các sự kiện thêm và chỉnh sửa các Appointment.

Trong file source code, ta xử lý các sự kiện như sau:

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data.Sql; using System.Data.OleDb; using DevExpress.Web.ASPxScheduler;

Page 56: Tai Lieu Huong Dan Su Dung DevX

56

using DevExpress.Web.ASPxScheduler.Controls; using DevExpress.XtraScheduler; namespace Sample1 { public partial class ASPxSchedule : System.Web.UI.Page { private int lastInsertedAppointmentId; protected void Page_Load(object sender, EventArgs e) { } protected void ASPxScheduler1_AppointmentRowInserting(object sender, ASPxSchedulerDataInsertingEventArgs e) { e.NewValues.Remove("ID"); } protected void SqlDataSourceApp_Inserted(object sender, SqlDataSourceStatusEventArgs e) { OleDbConnection connection = (OleDbConnection)e.Command.Connection; using (OleDbCommand cmd = new OleDbCommand("SELECT @@IDENTITY", connection)) { this.lastInsertedAppointmentId = (int)cmd.ExecuteScalar(); } } protected void ASPxScheduler1_AppointmentRowInserted(object sender, ASPxSchedulerDataInsertedEventArgs e) { e.KeyFieldValue = this.lastInsertedAppointmentId; }

Page 57: Tai Lieu Huong Dan Su Dung DevX

57

protected void ASPxScheduler1_AppointmentsInserted(object sender, PersistentObjectsEventArgs e) { int count = e.Objects.Count; System.Diagnostics.Debug.Assert(count == 1); Appointment apt = (Appointment)e.Objects[0]; ASPxSchedulerStorage storage = (ASPxSchedulerStorage)sender; storage.SetAppointmentId(apt, lastInsertedAppointmentId); } } }

Biên dịch và chạy chương trình, lúc này ta đã có thể thêm mới một Appointment mới cũng như chỉnh sửa thông tin của một Appointment nào đó.

Page 58: Tai Lieu Huong Dan Su Dung DevX

58

5. ASPxGridView 5.1. Tổng quan

5.1.1. Đặc điểm ASPxGridView là một Control rất mạnh, hỗ trợ việc hiển thị dữ liệu

dạng lưới, cho phép ta tạo ra các trường hiển thị bằng tay hoặc thông qua Database.

• Đặc tính chung o Tương thích với nhiều trình duyệt: Internet Explorer 5.5 +, Mozilla Firefox, Netscape 7.2+, Opera 8+, Safari.. o Hỗ trợ AJAX: ta có thể cập nhật nội dung của Control thông qua phương thức callbacks, không cần thiết phải load lại toàn bộ trang. o Tương tác với người dùng rất đa dạng. o Xuất dữ liệu: hỗ trợ xuất dữ liệu ra định dạng PDF, XLS và RTF o Hỗ trợ SEO.(Search Engine Optimization): tối ưu hoá công cụ tìm kiếm.

• Khai thác dữ liệu: o Hỗ trợ khai thác dữ liệu từ nhiều hệ quản trị csdl khác nhau: Microsoft Access, SQL Server o Cho phép hiển thị dữ liệu dạng Master-Detail với cấu trúc đa dạng. o Có 2 chế độ chỉnh sửa: từ Form chỉnh sửa hay chỉnh ngay trên hàng. o Chức thực dòng dữ liệu và chỉ ra lỗi: ASPxGridView cho phép ta xác thực bằng tay các dòng đã chỉnh sửa, và hiển thị thông báo lỗi đối với trường không hợp lệ. o Tự động gom nhóm dữ liệu: Cho phép người dùng gom nhóm dữ liệu, không giới hạn số cột. o Tóm tắt dữ liệu đầy đủ: Cho phép hiển thị thông tin thống kê như MIN, MAX, AVG, SUM và COUNT trực tiếp trên lưới. o Cho phép lọc dữ liệu và hiển thị Text: Với mỗi cột ta có thể chỉ định cách dữ liệu được sắp xếp theo giá trị hiển thị của nó. Ngoài ra ta có thể cho phép lọc dữ liệu bất kỳ bằng cách gõ vào giá trị muốn lọc trực tiếp vào ô textbox. o Cho phép lựa chọn nhiều dòng cùng một lúc.

Page 59: Tai Lieu Huong Dan Su Dung DevX

59

• Tuỳ biến giao diện hiển thị: o Giao diện: Ta có thể tuỳ chỉnh giao diện của lứoi bằng

cách chọn các định dạng hiển thị khác nhau, chỉ sau vài cái click chuột. o Hỗ trợ các Template: với mỗi thành phần bên trong

ASPxGridView, ta có thể hoàn toàn tuỳ biến việc hiển thị thông qua các control HTML hay bên phía máy chủ. o Hỗ trợ CSS đầy đủ.

5.1.2. Các thư viện liên kết động cần thiết để triển khai ứng dụng

• DevExpress.Web.ASPxGridView.vX.Y.dll: Chứa các lớp thực thi các chức năng của control ASPxGridView. • DevExpress.Web.vX.Y.dll: Chứa các lớp thực thi toàn bộ các chức năng của các Control liên quan tới bộ ASPxExperience(Menu, NavBar, TabControl) • DevExpress.Data.vX.Y.dll: Chứa các lớp thực thi các chức năng liên quan tới việc quản lý dữ liệu . • DevExpress.Web.ASPxThemes.vX.Y.dll: Chứa các lớp để thực thi một tập các chức năng về tuỳ chỉnh giao diện và cách phối hợp. • DevExpress.Web.ASPxEditors.vX.Y.dll: Chứa các lớp để thực thi các chức năng để chỉnh sửa dữ liệu trên lưới. • Đường dẫn nơi chứa các thư viện này: C:\Program Files\ DevExpress 2010.1\ Components\Sources\ DevExpress.DLL

5.2. Ví dụ minh hoạ 5.2.1. Tạo một Control ASPxGridView với Data Source từ

Database Access. Ta tạo một GridView như hình sau:

Page 60: Tai Lieu Huong Dan Su Dung DevX

B

TrTo

B2

Hình

1: Đưa con

rong của soolbox vào

Hình 2.5.2

2: Thêm và

h 2.5.1 : ví

ntrol ASPx

sổ Designthẻ div bên

: Control A

à Cấu hình

60

dụ Minh H

NavBar và

view, kéo n trong

ASPxGridVi

h Data Sour

oạ ASPxGr

ào giao diện

thả comp

iew trên mà

rce

ridView

n

ponent ASP

àn hình Des

PxGridView

sign

w từ

Page 61: Tai Lieu Huong Dan Su Dung DevX

Thta D

Trtro

ND

hêm file datthêm file NevExpress)

rong Toolbong.

hấn vào thata Source

tabase của ANwind.mdb

Hình 2.5.

ox, nhóm D

hẻ thông mie

Hình 2.5.4

61

Access vào (file này có

.3 : Thêm D

Data, kéo th

inh của Ac

4 : Màn hìn

o Trong Appó sẵn trong

Data Source

hả AccessD

ccessDataSo

nh Cấu hình

p_Data của Sample Co

e vào projec

DataSource

ource1-> c

h Data Sourc

Project, ở đode của

ct

vào thẻ div

chọn Confi

ce

đây

v bên

igure

Page 62: Tai Lieu Huong Dan Su Dung DevX

62

Nhấn Browse để chọn database, chọn database Nwind.mdb mà ta đã thêm:

Hình 2.5.5 : Màn hình chọn Database

Nhấn OK ->Next, xuất hiện màn hình để chọn table cần hiển thi, ở đây ta chọn tables Customers, chọn vào checkbox * để chọn toàn bộ các trường.

Page 63: Tai Lieu Huong Dan Su Dung DevX

63

Hình 2.5.6 : Chọn table và các trường cần hiển thị

Nhấn next để tiếp tục, ở màn hình kế nhấn Test Query để kiểm tra truy vấn.

Page 64: Tai Lieu Huong Dan Su Dung DevX

64

Hình 2.5.7 : Màn hình kiểm tra truy vấn

Nhấn Finish để kết thúc việc cấu hình AccessDataSource.

B3: Tham chiếu Data Source vào ASPxGridView

Tại màn hình Design View, chọn ASPxGridView1 mà ta thêm ở trên, nhấn chọn thẻ thông minh ở cạnh phải -> Phần Choose Data Source ta chọn AccessDataSource1.

Page 65: Tai Lieu Huong Dan Su Dung DevX

NG

5.

H

hìn trong Arid như là:

• Show • Show

theo từ• Enabl• Enabl• Enabl

lưới • Enabl• Enabl

2.2. TạTa tạo lư

ình 2.5.8 : C

ASPxGridV

Pager: HiệGroup Paừng trường le Editing: le Insertingle Selection

le Delete: Cles filtering

ạo lưới trìnưới như hìn

65

Chọn Data

iew Tasks t

ện số trang anel: hiện P

bằng cách Cho phép c

g: Cho Phépn: Cho phé

Cho phép xog: Cho phép

nh bày dữ lnh sau:

Source cho

ta thấy có th

của lưới. Panel bên tr

kéo thả vàochỉnh sửa dp thêm mớiép chọn m

oá một hoặcp tạo bộ lọc

iệu theo dạ

o Grid

hêm một số

rên Grid để o Panel đó. dữ liệu ngayi record vào

một hoặc nh

c nhiều recoc theo từng

ạng Master

ố chức năng

sắp xếp dữ

y trên lưới o table trên hiều record

ord trên lướtrường.

r-Detail

g cho

ữ liệu

lưới. trên

ới

Page 66: Tai Lieu Huong Dan Su Dung DevX

66

Hình 2.5.9 : Lưới dạng Master-Detail

Ta sử dụng Database Nwind.mdb để khai thác dữ liệu. B1: Thêm và cấu hình Data Source Tạo ra một AccessDataSoure đặt tên là dsCategories, ta cấu hình cho hiển thị toàn bộ các trường của bảng Categories trong Database Nwind.mdb. Tạo thêm một AccessDataSource đặt tên là dsProducts, trong phần cấu hình datasource này, ở bước chọn tables, ta chọn tables Products tương ứng. Tại bước này, ta nhấn vào nút WHERE để thêm mới một session

Page 67: Tai Lieu Huong Dan Su Dung DevX

67

Hình 2.5.10 : Chọn table và các trường tương ứng.

Trong cửa sổ Add WHERE Clause, Mục Collumn chọn CategoryID, Mục Operator chọn “=”, mục Source chọn Session, trong textbox Session field ta nhập vào CategoryID, nhấn nút Add để thêm mới Session

Page 68: Tai Lieu Huong Dan Su Dung DevX

68

Hình 2.5.11: Thêm mới một Session

Nhấn Ok ->Next-> Finish hoàn tất việc cấu hình datasoure dsProducts

B2: Tạo các ASPxGridView Master và Detail và cấu hình tham chiếu Data Source. Trong Design View, kéo thả 2 Component ASPxGridView vào trong thẻ div. Chọn DataSource của ASPxGridView1 là dsCategories, chọn DataSource cho ASPxGridView2 là dsProducts.

Page 69: Tai Lieu Huong Dan Su Dung DevX

Mtiế

H

Mở thể thônếp thẻ thông

Hình 2.5.12

ng minh củg mình của

69

: GridView

ủa ASPxGrlưới này, tr

w và DataSo

ridView1 crong phần D

ource tương

chọn Edit TDisplay chọ

g ứng

Templates.ọn Detail R

. Mở Row

Page 70: Tai Lieu Huong Dan Su Dung DevX

Kth

B3Chtađể

éo ASPxGrhấy kết quả

Hìn3: Cấu hìnhọn ASPxG

ab Events, ể xử lý sự k

Hình 2ridView2 như sau:

h 2.5.14 : Anh và xử lý GridView2Double clic

kiện này.

70

2.5.13 : Editthả vào Det

ASPxGridVsự kiện , gán thuộcck vào phư

t Templatetail Row củ

View2 trong

tính IsDetaơng thức B

ủa ASPxGr

g ASPxGrid

ailGrid là TeforePerfo

ridView1. T

dView1

True. TronormDataSe

Ta

ng elect

Page 71: Tai Lieu Huong Dan Su Dung DevX

71

Hình 2.5.15 : Xử lý sự kiện BeforePerformDataSelect

Trong cửa sổ Code, ta xử lý phương thức BeforePerformDataSelect như sau:

protected void ASPxGridView2_BeforePerformDataSelect(object sender, EventArgs e)

{

Page 72: Tai Lieu Huong Dan Su Dung DevX

72

Session["CategoryID"]=(sender as DevExpress.Web. ASPxGridView.ASPxGridView ). GetMasterRowKeyValue () ;

} Quay trở lại màn hình Design View, chọn thẻ thông minh của ASPxGridView1 , chọn End Template Editing

Hình 2.5.16 : Màn hình kết thúc việc lồng DetailRow

Gán thuộc tính ASPxGridView1.ShowDetailRow = True;

Hình 2.5.17 : Tuỳ chọn thuộc tính

Biên dịch và chạy chương trình, ta được giao diện như sau:

Page 73: Tai Lieu Huong Dan Su Dung DevX

73

Hình 2.5.18 : GridView dạng Master

Nhấn chọn dấu “+” ở đầu mỗi dòng ta được giao diện như sau:

Hình 2.5.19 : GridView dạng Master-Detail

Page 74: Tai Lieu Huong Dan Su Dung DevX

74

5.2.3. Tạo Contextmenu trong grid Trong ví dụ này, ta sẽ lồng menu popup vào gridview bằng cách mỗi lần nhấn chuột phải vào một dòng nhất định, sẽ xuất hiện một menu ngữ cảnh để thực hiện các thao tác chỉnh sửa dữ liệu trên dòng hoặc xoá dòng đó khỏi lưới. Bên cạnh đó, có thêm chức năng tạo mới một dòng dữ liệu khác, giống như hình dưới:

Hình 2.5.20 : Minh hoạ menu popup trong lưới.

Khi chọn New, sẽ xuất hiện những ô edit box cho ta thêm mới dữ liệu của một dòng:

Hình 2.5.21: thêm mới một dòng

(Lưu ý: trường EmployeeID là tăng tự động)

Page 75: Tai Lieu Huong Dan Su Dung DevX

75

Khi chọn Edit, ta có thể chỉnh sửa dữ liệu của dòng đó:

Hình 2.5.22 : Trước khi chỉnh sửa dữ liệu của dòng có

EmployeeID=1

Ví dụ Ta thay đổi Last name thành Davolio1, nhấn chọn Update, dữ liệu sẽ được cập nhật như sau:

Hình 2.5.23 : Sau khi chỉnh sửa dữ liệu của dòng có EmployeeID=1

Khi chọn Delete, dữ liệu của dòng được chọn sẽ bị xoá.

Page 76: Tai Lieu Huong Dan Su Dung DevX

76

Để thực hiện được , ta cần phải có sự hỗ trợ của JavaScript, bằng cách xử lý sự kiện ở phía người dùng. Ta thực hiện các bước như sau: B1: Thêm mới một Popup Menu Kéo thả control ASPxPopupMenu vào trong màn hình Design View, và thêm các Item: New, Edit, Delete. Ta thao tác giống như một menu bình thường. Lưu ý, ngoài trường Text là tên hiển thị các Item, ta cần thêm vào trường Name để có thể thao tác với các Item đó.

Hình 2.5.24 : Thuộc tính Name của item

Ta set thuộc tính ClientInstanceName cho PopupMenu, thuộc tính này dùng để gọi tới khi ta cần thao tác với PopupMenu trong JavaScript:

Page 77: Tai Lieu Huong Dan Su Dung DevX

77

Hình 2.5.25: thuộc tính ClientInstanceName của PopupMenu

Nhấn chọn thẻ thông mình của PopupMenu, chọn vào Client-Side Events

Page 78: Tai Lieu Huong Dan Su Dung DevX

78

Hình 2.5.26: Thẻ chức năng của Popup Menu

Trong Cửa sổ ASPxPopupMenu Client-Side Events Editor mở sau đó, chọn ItemClick ở cột bên trái và thêm vào sự kiện GridMenuItemClick(e);. Ta sẽ xử lý sự kiện này trong JavaScript.

Page 79: Tai Lieu Huong Dan Su Dung DevX

79

Hình 2.5.27 : Thêm mới phương thức trong sự kiện ItemClick

B2: Thêm mới một DataSource Ta thêm mới mộ AccessDataSource, chọn database Nwind.mdb, chọn bảng hiển thị là Employees, các trường cần hiển thị là EmployeeID, Last Name, First Name.

Page 80: Tai Lieu Huong Dan Su Dung DevX

80

Hình 2.5.28 : Chọn bảng và các trường hiển thị

Lưu ý, chọn tuỳ chọn Generate INSERT, UPDATE, and DELETE statements trong phần Advanced

Hình 2.5.29 : Tuỳ chọn nâng cao

Page 81: Tai Lieu Huong Dan Su Dung DevX

81

B3: Thêm mới một lưới Ta thêm một control ASPxGridView vào màn hình DesignView, chọn DataSource là data source ta mới vừa tạo. Ta set thuộc tính ClientInstanceName cho GridView:

Hình 2.5.30: thuộc tính ClientInstanceName của PopupMenu

Nhấn chọn thẻ thông mình của lưới, chọn vào Client-Side Events

Page 82: Tai Lieu Huong Dan Su Dung DevX

82

Hình 2.5.31 : chọn xử lý sự kiện ở phía ngừoi dùng

Trong Cửa sổ ASPxGridView Client-Side Events Editor mở sau đó, chọn Context Menu ở cột bên trái và thêm vào phương thức OnContextMenu(e);. Ta sẽ xử lý sự kiện này trong JavaScript.

Page 83: Tai Lieu Huong Dan Su Dung DevX

83

Hình 2.5.32: thêm mới phương thức trong sự kiện ContextMenu

B4: Xử lý các sự kiện bằng JavaScript. Ta thêm một đoạn JavaScript sau để xử lý các sự kiện mở một Menu popup khi nhấn chuột phải vào một dòng và sự kiện click vào từng Item của Menu.

<script type="text/javascript"> var editingVisibleIndex; function OnContextMenu(e) { //if the object is not a row return //editingVisibleIndex = visibleIndex; //ASPxPopupMenu1.ShowAtElement(e); editingVisibleIndex = e.index; if (e.objectType == 'row') {

pmRowMenu.ShowAtPos(ASPxClientUtils.GetEventX(e.htmlEvent), ASPxClientUtils.GetEventY(e.htmlEvent));

} } function GridMenuItemClick(e) { if (e.item == null) return; var name = e.item.name;

Page 84: Tai Lieu Huong Dan Su Dung DevX

84

if (name == "New") ASPxGridView1.AddNewRow(); if (name == "Edit") ASPxGridView1.StartEditRow(editingVisibleIndex); if (name == "Delete") ASPxGridView1.DeleteRow(editingVisibleIndex); } </script>

Như vậy ta đã hoàn thành các thao tác để xử lý sự kiện tạo Menu trong lưới, và xử lý các sự kiện thêm, xoá, sửa dữ liệu. Biên dịch và chạy, ta được lưới dữ liệu như hình dưới:

6. XtraReport 6.1. Tổng quan

6.1.1. Đặc điểm Phần report trên môi trường Web cũng sử dụng Component XtraReport như môi trường Window. Nó chứa công cụ để tạo Report từ dữ liệu phức hợp, chế độ xem trước, in và xuất report ra nhiều định dạng khác nhau. • Đặc tính chung:

o XtraReport hoạt động được trong cả ứng dụng Winform và Webform. Ta có thể chỉ cần tạo một Report và sử dụng ở 2 môi trường khác nhau. o Tích hợp đầy đủ Visual Studio .Net: Report Designer tích hợp. Hỗ trợ ch độ xem trước dạng HTML và dạng in, khi có thay đổi trong thiết kế report, ta không cần biên dịch lại toàn bộ ứng dụng mà vẫn có thể cập nhật được chế độ xem trước kịp thời. o XtraReports làm việc với toàn bộ đối tượng dữ liệu được hỗ trợ bởi Visual Studio .NET như : chuẩn .NET Data Objects, Ilist Interface, XML Data Objects. o Cho phép lọc dữ liệu dưới với nhiều cấp: Data adapter, Data set, Data views. o Cho phép gom nhóm dữ liệu: gom nhóm đa tầng và lồng nhau. o Hỗ trợ nhiều control chuẩn như: Label, Line, BarCode, CheckBox, PageInfo, Panel, PictureBox, PageBreak, Table, ZipCode, etc. o Hỗ trợ biểu đồ thông qua control XtraCharts.

Page 85: Tai Lieu Huong Dan Su Dung DevX

85

o SubReports: Ta có thể dùng lại các lớp của XtraReport vào ứng dụng qua control Subreport. Chỉ cần thả vào control Subreport, set thuộc tính nguồn Report, ta có 2 report từ một nguồn. o Hỗ trợ tóm tắt: dễ dàng tạo tóm tắt cho một textbox hay một ô trong bảng. Chỉ cần set 2 thuộc tính Summary posiotion(group hay report) và Summary type(Avg, min, max, sum, count…) o Hỗ trợ phong phú các định dạng xuất ra: PDF, HTML, MHT, RTF, TXT, CSV và MS Exel. Có thể xuất report ra định dạng hình ảnh như: BMP, EMF, GIF, JPEG, PNG, TIFF, WMF. o Importing: có thể nạp lại report cũ của mình tử MS Access, Crystal Reports, Data Dynamics Active Reports vào XtraReport. o Tìm kiếm ở chế độ xem trước: giúp cho người dùng có thể tìm những đoạn text mong muốn. o Hỗ trợ thừa kế, Bookmark, Watermarks.

6.1.2. Các thư viện liên kết động cần thiết để triển khai ứng dụng

• DevExpress.Utils.v10.1.dll: Chứa các lớp tiện ích cơ bản. • DevExpress.Data.v10.1.dll: Chứa các lớp thực thi các chức năng liên quan tới việc quản lý dữ liệu . • DevExpress.Charts.v10.1.Core.dll : Chỉ cần nếu report có ít nhất một control XRChart. • DevExpress.XtraCharts.v10.1.dll: Chỉ cần nếu report có ít nhất một control XRChart. • DevExpress.RichEdit.v10.1.Core.dll: Thực thi các chức năng cơ bản của việc in ra các định dạng phong phú. • DevExpress.XtraRichEdit.v10.1.dll: Hỗ trợ việc xuất ra các định dạng khác nhau. • DevExpress.XtraReports.v10.1.dll: Chứa các lớp của bộ XtraReport. • DevExpress.Web.vX.Y.dll: Chứa các lớp thực thi toàn bộ các chức năng của các Control liên quan tới bộ ASPxExperience(Menu, NavBar, TabControl)

Page 86: Tai Lieu Huong Dan Su Dung DevX

86

• DevExpress.Web.ASPxThemes.vX.Y.dll: Chứa các lớp để thực thi một tập các chức năng về tuỳ chỉnh giao diện và cách phối hợp. • DevExpress.XtraReports.v10.1.Web.dll: Chứa các lớp của control ReportViewer và ReportToolbar. • Đường dẫn nơi chứa các thư viện này: C:\Program Files\ DevExpress 2010.1\ Components\Sources\ DevExpress.DLL

6.2. Ví dụ minh hoạ 6.2.1. Tạo Web Report đơn giản

Ta sẽ tạo Report như hình sau :

Page 87: Tai Lieu Huong Dan Su Dung DevX

B

1: Thêm m

nh 2.6.1 : V

mới một Rep

87

Ví dụ minh

port

h hoạ Web RReport

Page 88: Tai Lieu Huong Dan Su Dung DevX

88

Nhấn chuột phải vào Project, Add New Item. Trong màn hình list các Item chọn XtraReport Class V10.1 như trong hình dưới

Hình 2.6.2 : Thêm mới một XtraReport Class

Lúc này, trong project có thêm class XtraReport1. Ta lưu ý add thêm Reference DevExpress.XtraReports và DevExpress.Utils.

B2: Thêm mới và cấu một DataSet Nhấn chuột phải vào Project, Add New Item. Trong màn hình list các Item chọn DataSet như trong hình dưới:

Page 89: Tai Lieu Huong Dan Su Dung DevX

89

Hình 2.6.3 : Thêm mới một DataSet

Trong màn hình DataSet Designer mở sau đó, kéo thả bảng Categories của Database Nwind.mdb từ ô Server Explorer vào:

Hình 2.6.4 : Cấu hình DataSet

B3: Thiết kế Report

Giờ ta sang cửa sổ designer của Report, nhấn vào thẻ thông minh, trong phần DataSource , chọn DataSet1 vừa tạo:

Page 90: Tai Lieu Huong Dan Su Dung DevX

90

Hình 2.6.5 : Chọn DataSet cho Report

Trên màn hình Designer của Report, nhấn chuột phải chọn Insert Band -> ReportHeader để thêm Header cho Report. Trong phần Detail ta kéo thả các trường CategoryName, Description và Picture từ fieldlist vào theo mẫu sau:

Hình 2.6.6 : Thiết kế Report

Preview trước report ta được kết quả sau:

Page 91: Tai Lieu Huong Dan Su Dung DevX

91

Hình 2.6.7 : Chế độ Preview của Report

Ta đã hoàn thành việc thiết kế một report giờ cần phải cho nó hiển thị lên website

B4: Hiển thị Report trên Website và cấu hình report

Ta quay lại trang cần hiển thị Report, kéo thả Component ReportToolbar và ReportViewer từ ô Toolbox vào thẻ div bên trong:

Hình 2.6.8 : tạo ReportToolbar và ReportViewer

Để liên kết ReportToolbar1 và ReportViewer1 với nhau, gán giá trị cho thuộc tính ReportViewer của ReportToolbar1 là ReportViewer1

Page 92: Tai Lieu Huong Dan Su Dung DevX

92

Hình 2.6.9 : tạo liên kết giữa ReportToolbar và ReportViewer

Để tham chiếu tới Report mà ta đã tạo ở trên, gán trị cho thuộc tính Report của ReportViewer1 là XtraReport1

Hình 2.6.10 : Tham chiếu ReportViewer tới Report đã tạo.

Page 93: Tai Lieu Huong Dan Su Dung DevX

Biên dịch

6.

h và chạy ch

2.2. TạTa sẽ tạo

hương trình

Hình ạo Report dmột Report

93

h, ta được g

2.6.11 : Giadạng bảng t dạng bảng

giao diện sa

ao diện Wevà thống k

g và thống k

au:

b Report kê dữ liệu kê dữ liệu nnhư hình sauu:

Page 94: Tai Lieu Huong Dan Su Dung DevX

Lưnhcá BB2Ở B3ThReRe

Hình 2

ưu ý rằng hững dạng ác thao tác c

1: Thêm m2: Thêm mđây ta chọn

3: Thiết kếhêm hai ceport. Để teports, chọn

2.6.12 : Rep

trong các không giốncòn lại đều

mới một Repmới và cấu m

n table Prodế Report control XRthực hiện vn item XRT

94

port dạng b

qui trình tạng nhau , ctương tự.

port (Như một DataSducts của d

RTable vàoviệc này, troTable, tiếp

bảng và thốn

ạo mới và hỉ khác nha

trên) et(Như trêatabase Nw

o phần Pagong ô Tool đó trong k

ng kê dữ liệ

cho hiển thau ở khâu t

ên) wind.mdb

geHeader lbox, phần khu vực Pa

ệu

hị những rethiết kế Re

và Detail các controlgeHeader

eport eport,

vào l của nhấn

Page 95: Tai Lieu Huong Dan Su Dung DevX

vàdứ

Lúở raĐPrtrê

à giữ chuột ứoi:

Hình

úc này ta sẽphần PageH

a. ể khai thácroductID, ên các ô tươ

trái đồng th

h 2.6.13 : T

ẽ thấy có haHeader và

c dữ liệu từProductNaơng ứng đã

95

hời rê con t

hêm contro

ai control làXRTable2

ừ các trườngame, Unitsđược tạo ra

trỏ chuột xu

ol XRTable

à XRTable12 tương ứng

g, ta đơn gisOnOrdera sẵn

uống phần

vào Report

1 tương ứngg với phần

iản chỉ cần từ cửa sổ

Detail như

t

g với phần Detail đượ

kéo các trưField List

hình

table ợc tạo

ường t lên

Page 96: Tai Lieu Huong Dan Su Dung DevX

B4Ở OTrR

V

Hình 2

4: Hiển thịđây ta sẽ

n Orders rong cửa seportFoote

à từ FieldL

2.6.14 : Kéo

ị thống kê ccho hiển th

sổ Designer như hình

Hình 2

List, kéo thả

96

o thả các trư

của một trưhị tính tổng

Report, nhh dưới

2.6.15 : Thê

ả trường Un

ường dữ liệ

ường bên dg giá trị các

hấn chuột

êm vào Rep

nitsOnOde

ệu vào Repo

dưới Reporc records củ

phải rồi t

portFooter

r vào phần

ort

rt ủa trường U

thêm vào

ReportFoo

Units

phần

oter.

Page 97: Tai Lieu Huong Dan Su Dung DevX

Nta

Tatro

hấn chọn thclick chọn

a điều chỉnhong đó • Boun• Summ

phươn• Form

dạng

hẻ thông minút duyệt n

Hình

h các thông

nd Field: semary functng thức thố

mat Stringsố nguyên.

97

inh, và tronnằm bên ph

h 2.6.16: Tu

g số trong p

t trường dữtion: set là ng kê khác : ta gõ vào

ng danh sáchhải để hiển t

uỳ chỉnh Su

phàn Summ

ữ liệu là UniSum. Chúnhư Count

o Total Uni

h thao tác, pthị Summa

ummary

mary Editor

itsOnOrderú ý ta có tht, Min,Max,its: {0} để

phần Summary Editor

r như hình

r. hể thực hiện, Average…hiện thị gi

mary

trên,

n các …

iá trị

Page 98: Tai Lieu Huong Dan Su Dung DevX

98

• Ignore null values: check vào ô này, để những record có giá trị null sẽ không ảnh hưởng tới kết quả thống kê.

• Phần Summary Running: Lựa chọn Report, để việc tính tổng sẽ tính toàn bộ report(trong trường hợp có nhiều trang).

Chọn OK để hoàn tất, rồi xem kết quả bằng cách chọn Preview

Hình 2.6.17: Report dạng bảng ở chế độ Preview

Để hiện thị Border ngăn cách giữa các ô, set thuộc tính XRTable.Border=All

Page 99: Tai Lieu Huong Dan Su Dung DevX

B5trBi

DUR

5: Tạo Rerên) iên dịch ta s

o có nhiềunitsOnOrdeportToolB

eportToolb

sẽ được Re

Hình 2.6.

u Record nder ở traBar (Ở đây

99

bar và Rep

port có kết

18 : Report

nên ta sẽ khang đầu

y là trang 4)

portView

quả như sa

t ở trang đầu

hông thấy ptiên, ta

, ta sẽ được

để hiển th

au:

u tiên

phần tính tchọn tra

c kết qua nh

hị Report(

tổng của trưang cuối hư sau:

(Như

ường trên

Page 100: Tai Lieu Huong Dan Su Dung DevX

Hìnhh 2.6.19 : R

100

Report ở tranng cuối với

thống kê tínnh tổng

Page 101: Tai Lieu Huong Dan Su Dung DevX

101

7. ASPxEditors 7.1. Tổng quan

7.1.1. Đặc điểm • Đây là một bộ những control chuẩn của DevX dùng để thao tác, gắn với với các kiểu Control khác, gồm các controls như: Label, CompoBox, Listbox, Image, Memo… • Số lượng Control đa dạng: Hiện Có hơn 20 controls trong bộ ASPxEditors và sẽ mở rộng thêm nữa. Ta dễ dàng tìm được một Control để phục vụ nhu cầu của mình. • Gắn sẵn bộ máy xác thực(Validation mechanism): mặc dù các controls đều có hỗ trợ bộ máy xác thực chuẩn, tuy nhiên nhà sản xuất cũng đã gắn thêm chức năng xác thực. • Hỗ trợ SharePoint.

7.1.2. Một số component trong bộ ASPxEditors

Logo Control Mô tả ASPxImage Control hiển thị hình ảnh

ASPxButton Control để tạo các Button ASPxButtonEdit Một trình chỉnh sửa nội dung cho phép

hiển thị các nút bên trong một edit box ASPxCalendar Control để tạo lịch

ASPxCheckBox Control check box, cho phép chọn nhiều

ASPxRadioButton Control radio button, cho phép chọn một.

ASPxComboBox Control Chọn các item từ danh sách sổ xuống

ASPxLabel Control hiển thị label

ASPxHyperLink Control hiển thị và chỉnh sửa các siêu liên kết

ASPxListBox Control hiển thị list các item.

ASPxMemo Control hiển thị và chỉnh sửa nội dung nhiều dòng

ASPxTextBox Control hiển thị nội dung một dòng

ASPxTimeEdit Control hiển thị và chỉnh sửa giá trị thời gian.

Page 102: Tai Lieu Huong Dan Su Dung DevX

102

7.1.3. Các thư viện liên kết động cần thiết để triển khai ứng dụng • DevExpress.Web.ASPxEditors.vX.Y.dll: Chứa các lớp thực thi các chức năng của các control trong bộ ASPxEditors. • DevExpress.Web.vX.Y.dll: Chứa các lớp thực thi toàn bộ các chức năng của các Control liên quan tới bộ ASPxExperience(Menu, NavBar, TabControl) • DevExpress.Data.v10.1.dll: Chứa các lớp thực thi các chức năng liên quan tới việc quản lý dữ liệu . • DevExpress.Web.ASPxThemes.vX.Y.dll: Chứa các lớp để thực thi một tập các chức năng về tuỳ chỉnh giao diện và cách phối hợp.