Top Banner
Bài 2: Web Part và các trang SharePoint
39

Bài 2: Web Part và các trang SharePoint

Jun 10, 2015

Download

Documents

Tìm hiểu Web Part trên SharePoint
Tìm hiểu các cách phát triển Web Part trên SharePoint
Tìm hiểu các loại trang trên SharePoint
Giới thiệu về SharePoint Designer 2010 để tùy biến, thiết
kế và xây dựng giải pháp SharePoint mà không cần viết
code.
Tìm hiểu Web Part trên SharePoint
Tìm hiểu các cách phát triển Web Part trên SharePoint
Tìm hiểu các loại trang trên SharePoint
Giới thiệu về SharePoint Designer 2010 để tùy biến, thiết
kế và xây dựng giải pháp SharePoint mà không cần viết
code.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Bài 2: Web Part và các trang SharePoint

Bài 2:Web Part và các trang SharePoint

Page 2: Bài 2: Web Part và các trang SharePoint

Nội dung bài cũ

Giới thiệu SharePoint 2010Môi trường thực thi và môi trường phát triển SharePointMô hình đối tượng trên SharePoint 2010Solutions và Features trên SharePoint 2010

Web Part và các trang SharePoint 2

Page 3: Bài 2: Web Part và các trang SharePoint

Mục tiêu bài học

Tìm hiểu Web Part trên SharePointTìm hiểu các cách phát triển Web Part trên SharePointTìm hiểu các loại trang trên SharePointGiới thiệu về SharePoint Designer 2010 để tùy biến, thiếtkế và xây dựng giải pháp SharePoint mà không cần viếtcode.

Tìm hiểu Web Part trên SharePointTìm hiểu các cách phát triển Web Part trên SharePointTìm hiểu các loại trang trên SharePointGiới thiệu về SharePoint Designer 2010 để tùy biến, thiếtkế và xây dựng giải pháp SharePoint mà không cần viếtcode.

Web Part và các trang SharePoint 3

Page 4: Bài 2: Web Part và các trang SharePoint

SharePoint Web Part là gì?

SharePoint Web Part: là thành phần giao diện chính trêncác trang SharePointWeb Part: cho phép người dùng thay đổi nội dung, vị trí,cách hiển thị và tác động tới các trang web, trực tiếptrên trình duyệt.Web Part: hỗ trợ khả năng tùy biến (Customization) vàcá nhân hóa (Personalization)

SharePoint Web Part: là thành phần giao diện chính trêncác trang SharePointWeb Part: cho phép người dùng thay đổi nội dung, vị trí,cách hiển thị và tác động tới các trang web, trực tiếptrên trình duyệt.Web Part: hỗ trợ khả năng tùy biến (Customization) vàcá nhân hóa (Personalization)

Web Part và các trang SharePoint 4

Page 5: Bài 2: Web Part và các trang SharePoint

DEMO Web Part có sẵn trênSharePoint 2010

DEMO một số Web Part có sẵn trên SharePointContent Editor Web PartImage Web PartSite Users Web PartContent Query Web PartUser Tasks Web Part…

DEMO một số Web Part có sẵn trên SharePointContent Editor Web PartImage Web PartSite Users Web PartContent Query Web PartUser Tasks Web Part…

Web Part và các trang SharePoint 5

Page 6: Bài 2: Web Part và các trang SharePoint

Lịch sử của Web Part

WindowsSharePoint Services3.0

• Tương thích ngượcvới các nền tảngWeb Part trước đó

Windows SharePointServices 2.0

• Được thiết kế vớinền tảng Web Partđầu tiên sử dụng choWSS 2.0

Microsoft® ASP.NET 2.0

• Được thiết kế với nềntảng Web Part thốngnhất

• Mềm dẻo và dễ mởrộng hơn nền tảng choWSS trước đó

• Không hỗ hỗ trợ vàtương thích với nềntảng Web Part WSS 2.0

WindowsSharePoint Services3.0

• Tương thích ngượcvới các nền tảngWeb Part trước đó

Web Part và các trang SharePoint 6

Page 7: Bài 2: Web Part và các trang SharePoint

Cấu trúc một trang Web Part

Trang Web Part được thiết kế với…Một thực thể của lớp WebPartManagerMột hoặc nhiều Web Part ZonesCó thể có Editor Zone và/hoặc Catalog Zone

Web Part và các trang SharePoint 7

Page 8: Bài 2: Web Part và các trang SharePoint

Các loại Web Part trongSharePoint 2010

WSS Web PartsWSS Web Parts

SharePoint Foundation RuntimeASP.NET 2.0 Runtime

ASP Web PartsASP Web PartsASP Web Parts

Hybrid Web Parts

Web Part và các trang SharePoint 8

WSS v2 Runtime

Hybrid Web PartsHybrid Web Parts

WSS Web PartsWSS Web Parts

WSS Web Parts

Page 9: Bài 2: Web Part và các trang SharePoint

Các loại Web Part trongSharePoint 2010

Có hai loại Web Part được hỗ trợ trên SharePoint2010

ASP.NET Web Parts sử dụng lớp cơ sởSystem.Web.UI.WebControls.WebParts.WebPartSharePoint Web Parts sử dụng lớp cơ sởMicrosoft.SharePoint.WebPartPages.WebPart

Nên sử dụng ASP.NET Web Parts

Có hai loại Web Part được hỗ trợ trên SharePoint2010

ASP.NET Web Parts sử dụng lớp cơ sởSystem.Web.UI.WebControls.WebParts.WebPartSharePoint Web Parts sử dụng lớp cơ sởMicrosoft.SharePoint.WebPartPages.WebPart

Nên sử dụng ASP.NET Web Parts

Web Part và các trang SharePoint 9

Page 10: Bài 2: Web Part và các trang SharePoint

SharePoint Web Part với VS 2010

Web Part và các trang SharePoint 10

Page 11: Bài 2: Web Part và các trang SharePoint

SharePoint Web Part với VS 2010

Web Part: Web part chuẩnLà cách phát triển Web part truyền thốngKhông có khả năng kéo thả các control để thiết kế

Visual Web Part: Web part trực quanLà các phát triển Web Part mở rộng trong SharePoint 2010Có khả năng kéo thả các control để thiết kế

Web Part: Web part chuẩnLà cách phát triển Web part truyền thốngKhông có khả năng kéo thả các control để thiết kế

Visual Web Part: Web part trực quanLà các phát triển Web Part mở rộng trong SharePoint 2010Có khả năng kéo thả các control để thiết kế

Web Part và các trang SharePoint 11

Page 12: Bài 2: Web Part và các trang SharePoint

Khả năng tùy biến và cá nhân hóacủa Web Part

Khả năng tùy biến (Customizable) và khả năng cá nhânhóa (Personalizable) của Web Part cho phép các WebPart được sử dụng cho nhiều mục đích khác nhau.Khả năng tùy biến được hiểu là bất cứ thay đổi nào đốivới Web Part đều tác động đến toàn bộ người dùng đangsử dụng Web Part đó.

VD: quản trị trang có thể chỉ định một Feed để hiển thị lêntrang chủ, khi đó tất cả người dùng có thể xem Feed này.

Khả năng tùy biến (Customizable) và khả năng cá nhânhóa (Personalizable) của Web Part cho phép các WebPart được sử dụng cho nhiều mục đích khác nhau.Khả năng tùy biến được hiểu là bất cứ thay đổi nào đốivới Web Part đều tác động đến toàn bộ người dùng đangsử dụng Web Part đó.

VD: quản trị trang có thể chỉ định một Feed để hiển thị lêntrang chủ, khi đó tất cả người dùng có thể xem Feed này.

Web Part và các trang SharePoint 12

Page 13: Bài 2: Web Part và các trang SharePoint

Khả năng cá nhân hóa của Web Part

Khả năng cá nhân hóa được hiểu là một sự thay đổi nàođó đối với Web Part sẽ chỉ có tác động với người thựchiện sự thay đổi đó mà không ảnh hưởng tới nhữngngười dùng khác.

VD: người dùng có thể thay đổi địa chỉ Feed để mỗi khivào trang chủ thay vì hiển thị Feed do quản trị chỉ định,web site sẽ hiển thị Feed do chính người dùng chỉ định màkhông ảnh hưởng tới người dùng khác

Khả năng cá nhân hóa được hiểu là một sự thay đổi nàođó đối với Web Part sẽ chỉ có tác động với người thựchiện sự thay đổi đó mà không ảnh hưởng tới nhữngngười dùng khác.

VD: người dùng có thể thay đổi địa chỉ Feed để mỗi khivào trang chủ thay vì hiển thị Feed do quản trị chỉ định,web site sẽ hiển thị Feed do chính người dùng chỉ định màkhông ảnh hưởng tới người dùng khác

Web Part và các trang SharePoint 13

Page 14: Bài 2: Web Part và các trang SharePoint

DEMO

Demo:Tùy biến WebPart trên SharePoint 2010Cá nhân hóa WebPart trên SharePoint 2010

Demo: Kết nối giữa hai Web Part

Web Part và các trang SharePoint 14

Page 15: Bài 2: Web Part và các trang SharePoint

Web Part: Element.xml

Elements.xml:Định nghĩa Web Part trên SharePoint. Bao gồm tên, các fileliên quan, vị trí triển khai.

<?xml version="1.0" encoding="utf-8"?><Elements xmlns="http://schemas.microsoft.com/sharepoint/" >

<Module Name="HelloWebPart" List="113" Url="_catalogs/wp"><File Path="HelloWebPart\HelloWebPart.webpart"

Url="HelloWebPart.webpart"Type="GhostableInLibrary">

<Property Name="Group" Value="Custom" /></File>

</Module></Elements>

Web Part và các trang SharePoint 15

<?xml version="1.0" encoding="utf-8"?><Elements xmlns="http://schemas.microsoft.com/sharepoint/" >

<Module Name="HelloWebPart" List="113" Url="_catalogs/wp"><File Path="HelloWebPart\HelloWebPart.webpart"

Url="HelloWebPart.webpart"Type="GhostableInLibrary">

<Property Name="Group" Value="Custom" /></File>

</Module></Elements>

Page 16: Bài 2: Web Part và các trang SharePoint

Web Part: *.cs

*.cs: Định nghĩa Web Part controlThực thi các đoạn mã logic cho Web Part.

Web Part: Là một Web control được kế thừa từ lớpWebPart trong namespace:System.Web.UI.WebControls.WebParts

*.cs: Định nghĩa Web Part controlThực thi các đoạn mã logic cho Web Part.

Web Part: Là một Web control được kế thừa từ lớpWebPart trong namespace:System.Web.UI.WebControls.WebParts

Web Part và các trang SharePoint 16

public class HelloWebPart : WebPart{

//sử dụng phương thức này để xây dựng các controls//và giao diện cho WebPartprotected override void CreateChildControls(){}

}

Page 17: Bài 2: Web Part và các trang SharePoint

Web Part: *.webpart

*.webpart: File mô tả cách hiển thị Web PartType: chỉ ra thư viện thực thi code logic cho Web Part;Properties: các thuộc tính của Web part như: Title,Description

Web Part và các trang SharePoint 17

Page 18: Bài 2: Web Part và các trang SharePoint

Web Part: *.webpart

<?xml version="1.0" encoding="utf-8"?><webParts><webPart xmlns="http://schemas.microsoft.com/WebPart/v3"><metaData><type name="Lab02.VisualWebPart,$SharePoint.Project.AssemblyFullName$" />

<importErrorMessage>$Resources:core,ImportErrorMessage;

</importErrorMessage></metaData><data><properties><property name="Title" type="string">VisualWebPart1</property><property name="Description" type="string">Visual WebPart</property>

</properties></data>

</webPart></webParts>

Web Part và các trang SharePoint 18

<?xml version="1.0" encoding="utf-8"?><webParts><webPart xmlns="http://schemas.microsoft.com/WebPart/v3"><metaData><type name="Lab02.VisualWebPart,$SharePoint.Project.AssemblyFullName$" />

<importErrorMessage>$Resources:core,ImportErrorMessage;

</importErrorMessage></metaData><data><properties><property name="Title" type="string">VisualWebPart1</property><property name="Description" type="string">Visual WebPart</property>

</properties></data>

</webPart></webParts>

Page 19: Bài 2: Web Part và các trang SharePoint

Cá nhân hóa trên SharePoint

Cá nhân hóa được thực hiện thông qua trình đơn phíagóc phải trên cùng của trang SharePointMột Web Part hỗ trợ cá nhân hóa được khai báo thôngqua attribute Personalizable cho một Property nào đó

[Personalizable(PersonalizationScope.Shared),WebBrowsable(false)]

public string XmlUrl {get { return xmlUrl; }set { xmlUrl = value; }

}

Web Part và các trang SharePoint 19

[Personalizable(PersonalizationScope.Shared),WebBrowsable(false)]

public string XmlUrl {get { return xmlUrl; }set { xmlUrl = value; }

}

Page 20: Bài 2: Web Part và các trang SharePoint

Web Part Properties

Web Part sử dụng các Properties để khởi tạo giá trị đầuvào cho Web PartNgười dùng có thể thay đổi các giá trị này trực tiếp trêntrình duyệt

Web Part sử dụng các Properties để khởi tạo giá trị đầuvào cho Web PartNgười dùng có thể thay đổi các giá trị này trực tiếp trêntrình duyệt

Web Part và các trang SharePoint 20

[Personalizable(PersonalizationScope.Shared),WebBrowsable(false)]

public string XmlUrl {get; set; }

Page 21: Bài 2: Web Part và các trang SharePoint

Web Part Properties

WebBrowsable:Chỉ ra Web Part có khả năng được sửa đổi trực tiếp trêntrình duyệt

Personalizable: Khả năng cá nhân hóaPersonalizationScope.User:

Người dùng có khả năng cá nhân hóa Property này

PersonalizationScope.Shared:Người dùng không có khả năng cá nhân hóa Property này.

WebBrowsable:Chỉ ra Web Part có khả năng được sửa đổi trực tiếp trêntrình duyệt

Personalizable: Khả năng cá nhân hóaPersonalizationScope.User:

Người dùng có khả năng cá nhân hóa Property này

PersonalizationScope.Shared:Người dùng không có khả năng cá nhân hóa Property này.

Web Part và các trang SharePoint 21

Page 22: Bài 2: Web Part và các trang SharePoint

EditorPart

Tool Pane

GetEditorParts

The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.

Web Part và các trang SharePoint 2222

WEB PART

EDITORPART

EDITORPART

COMMONPROPS

COMMONPROPS

GetEditorParts

ApplyChanges

SyncChanges

Page 23: Bài 2: Web Part và các trang SharePoint

Thể hiện Properties thông quaEditorPart

EditorPartLà các control ASP.NET được hiển thị trên Tool Pane khingười dùng chọn chức năng sửa đổi Web PartCho phép sửa đổi, xác thực các Property để truyền vàocho Web Part.

Tạo EditorPart:Tạo một lớp, kế thừa từ lớp EditorPart được định nghĩatrong namespace System.Web.UI.WebControls.WebParts

EditorPartLà các control ASP.NET được hiển thị trên Tool Pane khingười dùng chọn chức năng sửa đổi Web PartCho phép sửa đổi, xác thực các Property để truyền vàocho Web Part.

Tạo EditorPart:Tạo một lớp, kế thừa từ lớp EditorPart được định nghĩatrong namespace System.Web.UI.WebControls.WebParts

Web Part và các trang SharePoint 23

public class OPMLEditor : EditorPart

Page 24: Bài 2: Web Part và các trang SharePoint

Tạo EditorPart

Tạo EditorPart:Override phương thức CreateEditorParts bên trong lớpWeb Part để tải Editor Part do bạn tự định nghĩa

Web Part và các trang SharePoint 24

EditorPartCollection IWebEditable.CreateEditorParts(){

List<EditorPart> editors = new List<EditorPart>();editors.Add(new OPMLEditor());return new EditorPartCollection(editors);

}

Page 25: Bài 2: Web Part và các trang SharePoint

Demo

Demo:Viết Web Part trực quan sử dụng Visual Studio 2010

Web Part và các trang SharePoint 25

Page 26: Bài 2: Web Part và các trang SharePoint

Các trang SharePoint và UI

Các trang (pages) là thành phần cơ bản tạo nên giaodiện người dùng UI trên SharePointCó hai loại trang (chính) trên SharePoint

Application pageSite page

Cả hai loại trang trên SharePoint đều kế thừa bố cục(layout) từ Master Page

Các trang (pages) là thành phần cơ bản tạo nên giaodiện người dùng UI trên SharePointCó hai loại trang (chính) trên SharePoint

Application pageSite page

Cả hai loại trang trên SharePoint đều kế thừa bố cục(layout) từ Master Page

Web Part và các trang SharePoint 26

Page 27: Bài 2: Web Part và các trang SharePoint

Các trang SharePoint và UI

Ngoài các trang, SharePoint cũng bao gồm các thànhphần khác tạo nên giao diện người dùng

Server RibbonWeb PartCSSTheme…

Ngoài các trang, SharePoint cũng bao gồm các thànhphần khác tạo nên giao diện người dùng

Server RibbonWeb PartCSSTheme…

Web Part và các trang SharePoint 27

Tham khảo: http://msdn.microsoft.com/en-us/library/ee539040.aspx

Page 28: Bài 2: Web Part và các trang SharePoint

Application page

Application page dùng để thực thi một số chức năngđược dùng chung trên SharePointApplication page là các file vật lý được lưu trên thư mụcgốc của SharePoint:

C:\Program Files\Common Files\Microsoft Shared\WebServer Extensions\14\TEMPLATE\LAYOUTS

Application page dùng để thực thi một số chức năngđược dùng chung trên SharePointApplication page là các file vật lý được lưu trên thư mụcgốc của SharePoint:

C:\Program Files\Common Files\Microsoft Shared\WebServer Extensions\14\TEMPLATE\LAYOUTS

Web Part và các trang SharePoint 28

Page 29: Bài 2: Web Part và các trang SharePoint

Application page

Application page được gắn trong Master page theo thứtự để tạo ra sự thống nhất về mặt giao diện trênSharePoint.Application page không có khả năng sửa đổi sử dụngSharePoint Designer

Ví dụ về Application page : Settings.aspx

Application page được gắn trong Master page theo thứtự để tạo ra sự thống nhất về mặt giao diện trênSharePoint.Application page không có khả năng sửa đổi sử dụngSharePoint Designer

Ví dụ về Application page : Settings.aspx

Web Part và các trang SharePoint 29

Tham khảo: http://msdn.microsoft.com/en-us/library/ee539040.aspx

Page 30: Bài 2: Web Part và các trang SharePoint

Site page

Site page là các file được lưu ở trong cơ sở dữ liệu củaSharePoint

Ví dụ Site page : Default.aspx, NewForm.aspx

Site page có thể được tạo, chỉnh sửa và tùy biến bởingười dùng.Có thể chỉnh sửa Site page sử dụng trình duyệt Webhoặc SharePoint DesignerSite page bao gồm hai loại

Trang chuẩn: chứa text, ảnh, Web part và các thành phầnkhácTrang Web Parts: chỉ chứa Web part trong các Web PartZone

Site page là các file được lưu ở trong cơ sở dữ liệu củaSharePoint

Ví dụ Site page : Default.aspx, NewForm.aspx

Site page có thể được tạo, chỉnh sửa và tùy biến bởingười dùng.Có thể chỉnh sửa Site page sử dụng trình duyệt Webhoặc SharePoint DesignerSite page bao gồm hai loại

Trang chuẩn: chứa text, ảnh, Web part và các thành phầnkhácTrang Web Parts: chỉ chứa Web part trong các Web PartZone

Web Part và các trang SharePoint 30

Page 31: Bài 2: Web Part và các trang SharePoint

Master Page

Master page định nghĩa một cấu trúc chung cho cáctrang trên SharePointMaster page đem đến sự thống nhất về mặt giao diệntrên SharePointCác Master Page trên SharePoint được lưu trữ trên thưmục

%ProgramFiles%\Common Files\Microsoft Shared\webserver extensions\14\TEMPLATE\GLOBAL

Master page định nghĩa một cấu trúc chung cho cáctrang trên SharePointMaster page đem đến sự thống nhất về mặt giao diệntrên SharePointCác Master Page trên SharePoint được lưu trữ trên thưmục

%ProgramFiles%\Common Files\Microsoft Shared\webserver extensions\14\TEMPLATE\GLOBAL

Web Part và các trang SharePoint 31

Page 32: Bài 2: Web Part và các trang SharePoint

SharePoint Designer 2010

Web Part và các trang SharePoint 32

Page 33: Bài 2: Web Part và các trang SharePoint

SharePoint Designer 2010

Microsoft SharePoint Designer 2010 là công cụ thiết kếweb và ứng dụng được sử dụng để tùy biến SharePointvà các ứng dụng.Sử dụng SharePoint Designer chúng ta có thể:

Tạo định dạng các trang webXây dựng giải pháp tự động hóa quy trìnhThiết kế cách hiển thị web site…

Microsoft SharePoint Designer 2010 là công cụ thiết kếweb và ứng dụng được sử dụng để tùy biến SharePointvà các ứng dụng.Sử dụng SharePoint Designer chúng ta có thể:

Tạo định dạng các trang webXây dựng giải pháp tự động hóa quy trìnhThiết kế cách hiển thị web site…

Web Part và các trang SharePoint 33

Page 34: Bài 2: Web Part và các trang SharePoint

Giao diện SharePoint Designer 2010

Web Part và các trang SharePoint 34

Page 35: Bài 2: Web Part và các trang SharePoint

Giao diện SharePoint Designer 2010

Navigation:Dùng để chuyển giữa các phần, các thành phần hoặc cácsite trong SharePoint

Gallery và Summary:Dùng hiển thị chi tiết các phần, các thành phần hoặc cácsite được chọn từ Navigation

Ribbon:Để thực hiện các hành động đối với các thành phần đượcchọn

Navigation:Dùng để chuyển giữa các phần, các thành phần hoặc cácsite trong SharePoint

Gallery và Summary:Dùng hiển thị chi tiết các phần, các thành phần hoặc cácsite được chọn từ Navigation

Ribbon:Để thực hiện các hành động đối với các thành phần đượcchọn

Web Part và các trang SharePoint 35

Page 36: Bài 2: Web Part và các trang SharePoint

Demo

Demo:Sử dụng SharePoint Designer 2010 để định dạng lại dữliệu hiển thị trên Web Part

Web Part và các trang SharePoint 36

Page 37: Bài 2: Web Part và các trang SharePoint

Tổng kết bài học

Web Part trên SharePoint 2010 tương thích với các nềntảng Web part trước đóVisual Studio 2010 cung cấp 2 loại hình phát triển Webpart cho SharePoint

Web Part chuẩnWeb Part trực quan

Chúng ta có thể viết Web Part để hỗ trợ các khả năngTùy biếnCá nhân hóaKhởi tạo và thay đổi giá trị trong lúc thực thi thông quaProperties và EditorPart

Web Part trên SharePoint 2010 tương thích với các nềntảng Web part trước đóVisual Studio 2010 cung cấp 2 loại hình phát triển Webpart cho SharePoint

Web Part chuẩnWeb Part trực quan

Chúng ta có thể viết Web Part để hỗ trợ các khả năngTùy biếnCá nhân hóaKhởi tạo và thay đổi giá trị trong lúc thực thi thông quaProperties và EditorPart

Web Part và các trang SharePoint 37

Page 38: Bài 2: Web Part và các trang SharePoint

Tổng kết bài học

SharePoint có hai lại trang triển khai và sử dụng với cácmục đích khác nhau

Application PageSite Page

SharePoint Designer 2010 được sử dụng như là mộtcông cụ thiết kế và xây dựng giải pháp không cần codetrên SharePoint

SharePoint có hai lại trang triển khai và sử dụng với cácmục đích khác nhau

Application PageSite Page

SharePoint Designer 2010 được sử dụng như là mộtcông cụ thiết kế và xây dựng giải pháp không cần codetrên SharePoint

Web Part và các trang SharePoint 38

Page 39: Bài 2: Web Part và các trang SharePoint

Danh sách tham khảo

http://office.microsoft.com/en-us/sharepoint-designer-help/video-introducing-sharepoint-designer-2010-VA101822495.aspxhttp://office.microsoft.com/en-us/sharepoint-designer-help/introducing-sharepoint-designer-2010-HA101782482.aspx?CTT=3http://msdn.microsoft.com/en-us/library/ee539040.aspxhttp://msdn.microsoft.com/en-us/library/ee535520.aspx

http://office.microsoft.com/en-us/sharepoint-designer-help/video-introducing-sharepoint-designer-2010-VA101822495.aspxhttp://office.microsoft.com/en-us/sharepoint-designer-help/introducing-sharepoint-designer-2010-HA101782482.aspx?CTT=3http://msdn.microsoft.com/en-us/library/ee539040.aspxhttp://msdn.microsoft.com/en-us/library/ee535520.aspx

Web Part và các trang SharePoint 39