P a g e | 0 4* 0 % F5

20
ตั วอย่ าง

Transcript of P a g e | 0 4* 0 % F5

Page 1: P a g e | 0 4* 0 % F5

P a g e | 0

ตวอยาง

Page 2: P a g e | 0 4* 0 % F5

คมอเขยน Windows 8 Apps ดวย VB 2012 และ VC# 2012 ส ำหรบผเรมตน

ตวอยาง

Page 3: P a g e | 0 4* 0 % F5

คมอเขยน Windows 8 Apps ดวย VB 2012 และ VC# 2012 ส ำหรบผเรมตน

ผแตง : นายศภชย สมพานช เนอหำ : 18 บท (618 หนา) ฟอนต : www.f0nt.com/

วนทพมพ : กนยายน 2555 ครงทพมพ : 1st Edition

ลขสทธ : สงวนลขสทธตาม พ.ร.บ. ลขสทธ พ.ศ. 2537 หามลอกเลยนแบบ, ดดแปลง, ทาซ า, เผยแพร ไมวาสวนหนงสวนใดของหนงสอเลมน หรอดวยวธการใดๆ กตาม นอกจากจะไดรบอนญาตเปนลายลกษณอกษรจากผเขยนเทาน น

คณผอานสามารถสอบถามปญหา-ตชมเน อหาของหนงสอเลมน ไดท https://www.facebook.com/thaivb.net

Visual Studio เปนเครองหมายทางการคาของบรษท Microsoft Coporation จ ากด โปรแกรมตางๆ ตามทอางในหนงสอเลมน เปนเครองหมายการคาของบรษทนนๆ ตว

อยาง

Page 4: P a g e | 0 4* 0 % F5

ค ำน ำ การพฒนา Windows 8 Apps ใน Visual Studio 2012 ดวย VB 2012 & VC# 2012 ถอวาเปนเรองใหมมากสาหรบโปรแกรมเมอรสาย .NET มาพรอมกบการเปดตวของระบบปฏบตการ Windows 8 และอปกรณแทบเลตของไมโครซอฟททเรยกวา Surface เน อหาทนาเสนอในหนงสอเลมน เหมาะสาหรบคณผอานทเปนมอใหมในโลกของ .NET และโปรแกรมเมอรสาย .NET เดมทตองการพฒนา Windows 8 Apps ดวย VB 2012 & VC# 2012 โดยทผเขยนนาเสนอเน อหาครบถวนท ง 2 ภาษา กลาวคอ

เน อหาเรมต งแตปพ นฐานระดบเบ องตน, ทาความรจกกบโครงสรางของ Windows 8 Apps ไปจนกระทงถงการสราง Windows 8 Apps ไดจรง โดยการยกตวอยางประกอบทกหวขอ เพอใหเหนผลการทางานชดเจน งายตอการทาความเขาใจ

สดทายน ผเขยนขอขอบคณสวนชวยเหลอใน MSDN ของไมโครซอฟททชวยแกไขปญหาในระหวางการแตงหนงสอเลมน หากคณผอานทานใด ตองการสอบถามปญหาเน อหาของหนงสอเลมน สามารถโพสถามปญหาไดทแฟนเพจของผเขยนท https://www.facebook.com/thaivb.net โดยทผเขยนขอยกเลกการถาม-ตอบปญหาผานระบบ e-mail ของผเขยนท งหมด

ศภชย สมพานช กนยายน 2555

ตวอยาง

Page 5: P a g e | 0 4* 0 % F5

ตวอยำงทนำสนใจในหนงสอเลมน

กำรสรำงปมควบคมแสดงคลปวดโอระดบ FullHD ในสวนแสดงผลของ Windows 8 Apps

กำรแกไขสวนแสดงผลในคอนโทรล ComboBox แบบท 1

ตวอยาง

Page 6: P a g e | 0 4* 0 % F5

กำรแกไขสวนแสดงผลในคอนโทรล ComboBox แบบท 2

กำรท ำงำนกบคอนโทรล GridView

ตวอยาง

Page 7: P a g e | 0 4* 0 % F5

กำรสรำงไดอะลอกแจงผใชงำน

สวนแสดงผลแบบ Windows Store

ตวอยาง

Page 8: P a g e | 0 4* 0 % F5

กำรคนหำขอมลจำก Bing, Yahoo และ Google ดวย Windows 8 Apps

กำรแสดงขอควำมและรปภำพในคอนโทรล GridView

ตวอยาง

Page 9: P a g e | 0 4* 0 % F5

สำรบญ บทท 1 กำวแรกเขำสโลกของ Windows 8 Apps 1

บทนา 1

ทาความรจกกบ Windows 8 ในข นตน 2

รปแบบของ App ในยคปจจบน 4

แนวทางของโปรแกรมเมอรในยค .NET Framework 4.5 5

การพฒนา Windows 8 Apps ดวย Visual Studio 2012 Express for Windows 8 17

การขอสทธชวคราวในการพฒนา Windows 8 Apps 23

การขอหรอตออาย Developer license 27

โครงสรางของ Windows 8 Apps 28

รปแบบการนาเสนอตวอยางในหนงสอเลมน 31

รปแบบการลงโคด (VB 2012 & VC# 2012) และสครปต XAML ในหนงสอเลมน 32

การจดระเบยบโคดหรอสครปตใน VS 2012 33

สรปทายบท 34

บทท 2 พนฐำนกำรพฒนำ Windows 8 Apps 35

บทนา 35

Windows 8 Apps แรกของคณ 36

การสรางเหตการณในสครปต XAML 46

การทดสอบรน Windows 8 Apps 53

ทาความรจกกบ Simulator ในข นตน 54

การกาหนดเพจเรมตน 61

วธการปด Windows 8 Apps ทถกตอง 62

การคนหาคณสมบตตางๆ 65

การอางองคอนโทรลหรออลเมนต 65

การเลอกโฟกสคอนโทรลทสนใจอย 69

การยกเลกแกไขคณสมบต 71

การ Copy คอนโทรลดวยปม Alt บนคยบอรด 72

ตวอยาง

Page 10: P a g e | 0 4* 0 % F5

การจดตาแหนงคอนโทรลดวยคณสมบตดาน Alignment 73

การจดระยะหางดวยคณสมบต Margin 76

สรปทายบท 78

บทท 3 กำรจดสวนแสดงผลดวยคอนโทรลประเภท Layout 79

บทนา 79

พ นฐานการใชงานคอนโทรล Grid 80

การรวมคอลมนหรอรวมแถวในคอนโทรล Grid 85

การปรบแตง Layout ของคอนโทรล Grid 87

การเปลยนสพ นหลงใหกบตวบรรจ 89

การจดเรยงคอนโทรลตามแนวนอนหรอแนวต งดวยคอนโทรล StackPanel 96

การเปลยนตวบรรจดวยคาสงใน VS 2012 99

การจดกลมคอนโทรลดวยคาสงใน VS 2012 100

การควบคมตวบรรจ 102

การสรางสวนแสดงผลแบบพ นทอสระดวยคอนโทรล Canvas 106

การซอนกนของวตถในสวนแสดงผลแบบ Canvas 108

การแสดงขอมลแบบมแถบเลอนดวยคอนโทรล ScrollViewer 110

สรปทายบท 112

บทท 4 กำรใชงำนคอนโทรลพนฐำน 113

บทนา 113

การสรางชองปอนขอความดวยคอนโทรล TextBox 114

การแสดงขอความหลายบรรทดในคอนโทรล TextBox 116

การสรางปมทมรปและขอความ 118

พ นฐานการแสดงขอความแบบหรหราดวยคอนโทรล RichTextBlock 119

การสรางเน อหาแบบหรหราในคอนโทรล RichTextBlock 121

การสรางตวเลอกดวยคอนโทรล RadioButton 123

การตรวจสอบ Content ของคอนโทรล RadioButton กรณทมการปรบแตง 124

การสรางตวเลอกดวยคอนโทรล CheckBox 129

ตวอยาง

Page 11: P a g e | 0 4* 0 % F5

การสรางปมกดคางดวยคอนโทรล RepeatButton 133

การสรางบราวเซอรขนาดเลกดวยคอนโทรล WebView 137

พ นฐานการเลนคลปวดโอดวยคอนโทรล MediaElement 143

การสรางเครองเลนคลปวดโอดวยคอนโทรล MediaElement 145

สรปทายบท 153

บทท 5 กำรใชงำนคอนโทรลประเภท list 154

บทนา 154

การใชงานคอนโทรล ComboBox 155

พ นฐานการใชงานคอนโทรล ListBox 160

การแสดงรปภาพในรายการของคอนโทรล ListBox 168

การเพมและลบรายการในคอนโทรล ListBox 175

สรปทายบท 179

บทท 6 กำรปรบแตงคอนโทรลดวย Style 180

บทนา 180

การใชงาน Style 181

การกาหนดขอบเขตการใชงานของ Resources 184

การกาหนดขอบเขตการใชงาน Resources ระดบ Local 185

การกาหนดขอบเขตการใชงาน Resources ระดบ Container 186

การใชงาน Resources ทมขอบเขตระดบ Application 186

การเรยกใชแบบภายใน 187

การเรยกใชแบบภายนอก 188

การกาหนดธมใน Windows 8 Apps ตามทเราตองการ 190

การควบคมธมโดยการเขยนโคด 192

สรปทายบท 198

บทท 7 กำรผกตดขอมล (Data Binding) ใน Windows 8 Apps 199

บทนา 199

การผกตดขอมลระหวางคอนโทรลของ Windows 8 Apps 200

ตวอยาง

Page 12: P a g e | 0 4* 0 % F5

รปแบบการผกตดขอมล 201

การสรางถาดผสมส 205

การผกตดขอมลจากคลาสแบบปกต 210

การผกตดขอมลโดยการเขยนโคด 217

สรปทายบท 222

บทท 8 กำรแกไขสวนแสดงผลในคอนโทรลผำนระบบ Template 223

บทนา 223

การผกตดขอมลกบคลาสโดยการแกไข Template 224

การแกไข Template ในขณะออกแบบ 236

การปรบแตงรายการในคอนโทรล ComboBox 248

พ นฐานการแสดงขอมลในคอนโทรล ListView แบบแกไข Template 255

สรปทายบท 266

บทท 9 ระบบไฟลใน Windows 8 Apps 267

บทนา 267

การเรยกระบบจดเกบขอมลใน Windows 8 268

แนวความคดของการเขยนโปรแกรมแบบขดจงหวะได (Asynchronous Programming) 268

พ นฐานการสราง, เขยนและอานไฟลใน Windows 8 Apps 269

ทาความรจกกบโฟลเดอรระบบในข นตนของ Windows 8 283

การเปดไฟล pdf หรอไฟลประเภทอนๆ ดวย Windows 8 Apps 286

การอานพาธของโฟลเดอร Assets และ Common 292

การคนหาไฟล 295

การเพมประสทธภาพคนหาไฟลดวย Advanced Query Syntax 304

ทางานกบระบบจดเกบขอมลดวยคอนโทรล FileOpenPicker 309

สรปทายบท 316

บทท 10 ท ำงำนกบรปภำพ 317

บทนา 317

การแสดงรปภาพดวยคอนโทรล Image 318

ตวอยาง

Page 13: P a g e | 0 4* 0 % F5

การลงสขอความดวยรปภาพ 319

การกาหนดความเขม-จางดวยคณสมบต Opacity 320

การเปลยนรปภาพโดยการเขยนโคด 322

สรปทายบท 325

บทท 11 กำรออกแบบสวนแสดงผลใน Windows 8 Apps 326

บทนา 326

การตรวจสอบความละเอยดของสวนแสดงผล 327

การสรางสวนแสดงผลแบบชองเปลยนเน อหาไดดวยคอนโทรล FlipView 330

การสรางอลบ มรปดวยคอนโทรล FlipView 336

การสรางสวนแสดงผลหลายแบบ (Multiple View) ดวยคอนโทรล FlipView 339

การสรางสวนแสดงผลแบบเปลยนหลายหนาได 355

การรบ-สงขอมลระหวางเพจ 359

การรกษาสถานะขอมลดวยระบบแคช (Cache) 367

การสรางสวนแสดงผลแบบตารางสเหลยมดวยคอนโทรล GridView 371

การเพมรายการในคอนโทรล GridView โดยการเขยนโคด 381

สรปทายบท 390

บทท 12 ระบบเมนและไดอะลอก 391

บทนา 391

การแสดงขอมลแบบ Popup ดวยคอนโทรล Popup 392

การสรางเมนจากการคลกขวา (ContextMenu) 395

พ นฐานการใชงาน AppBar 398

การปรบแตงแถบ AppBar โดยใช Style สาเรจรป 403

การสรางเมนใหกบแถบ AppBar 408

การสรางกรอบขอความดวยคลาส MessageDialog 413

การใช MessageDialog แบบมการตรวจสอบปมทถกเลอก 415

การสราง MessageDialog กอนออกจาก App 419

สรปทายบท 421

ตวอยาง

Page 14: P a g e | 0 4* 0 % F5

บทท 13 ท ำควำมรจกกบ Blend for Visual Studio 2012 422

บทนา 422

การใชงาน VS 2012 รวมกบ Blend 424

การปรบแตงสภาพแวดลอมของ Blend 429

ทาความรจกกบ Artboard 430

การซม Artboard 434

โหมดการทางานใน Blend 434

วธการรนโปรเจกตใน Blend 436

การกาหนดคณสมบตตางๆ ของคอนโทรล 436

การปรบคาใหกบคณสมบตทเปนตวเลข 437

คณสมบตทเกยวของกบระบบส 437

วธการเลอกส 440

การใชงาน Style ใน Blend 443

การเรยกใช Style เดมทมอย 449

การเปลยนขอบเขตเรยกใชงานของ Style 451

สรปทายบท 454

บทท 14 กำรใชงำนแหลงขอมล XML ใน Windows 8 Apps 455

บทนา 455

โครงสรางของภาษา XML 456

ความหมายของคาวาแทก (Tag) กบอลเมนต (Element) 456

กฎ กตกาเบ องตนสาหรบการสรางแหลงขอมล XML 457

พ นฐานการใชงานแหลงขอมล XML ดวยคลาส XElement 460

ขอความทมรปแบบ XML 463

การแสดงขอมลจากไฟล XML ดวยคลาส XDocument 465

การสรางแหลงขอมล XML โดยอาศยคลาส XDocument 474

การทางานกบโครงสรางของแหลงขอมล XML 479

การจดการแหลงขอมล XML ทเกบอยในคลาส XElement 483

ตวอยาง

Page 15: P a g e | 0 4* 0 % F5

สรปทายบท 487

บทท 15 กำรใชประโยชนจำกแหลงขอมล XML ดวย LINQ to XML 488

บทนา 488

พ นฐานการใชงาน LINQ to XML 489

การควรขอมลจากไฟล XML ภายนอก (*.xml) 489

การควรขอมลทอยในรปแบบ XML 496

การแสดงขอมล XML รวมกน 498

คา Null ใน XML 503

การควรขอมลจากแหลงขอมล XML แบบระบลาดบอลเมนต 509

การควรขอมลจาก XMLแบบแอตทรบวต 519

การสรางแหลงขอมล XML จากอารเรย 525

การสรางแหลงขอมล XML จากคลาส 526

การแสดงแหลงขอมล XML ดวย HTML 534

สรปทายบท 540

บทท 16 กำรแสดงขอมลใน XML ดวย XSLT 541

บทนา 541

การแสดงผลแหลงขอมล XML ดวยภาษา XSLT แบบไมมเงอนไข 542

สรปทายบท 555

Workshop 1 : กำรสรำงหนำ Login 556

การสรางหนา Login 556

Workshop 2 : กำรสรำง Windows 8 Apps แบบเปลยนสพนหลงได 560

การสราง Windows 8 Apps แบบเปลยนสพ นหลงได 560

Workshop 3 : กำรสรำงสวนแสดงผลแบบ Windows Store 565

การสรางสวนแสดงผลแบบ Windows Store 565

Workshop 4 : กำรคนหำขอมลผำน Bing, Yahoo และ Google 574

การคนหาขอมลผาน Bing, Yahoo และ Google 574

Workshop 5 : กำรแสดงขอมลและรปภำพในคอนโทรล GridView 582

ตวอยาง

Page 16: P a g e | 0 4* 0 % F5

การแสดงขอมลและรปภาพในคอนโทรล GridView 582

บทท 17 กำรปรบแตงโปรเจกต Windows 8 Apps 600

บทนา 600

การปรบแตง Windows 8 Apps ในไฟล Package.appxmanifest 601

การกาหนดหนาจอ Splash screen 603

การกาหนดไฟลรปภาพโลโก 604

การกาหนดขอความกากบโลโก 609

การกาหนดรปแบบสวนแสดงผล 611

การสราง App Package 612

สรปทายเลม 618

ตวอยาง

Page 17: P a g e | 0 4* 0 % F5

ตวอยาง

Page 18: P a g e | 0 4* 0 % F5

บทท 1 กำวแรกเขำสโลกของ Windows 8 Apps

บทน ำ ในปจจบน ไมโครซอฟทเปดตวระบบปฎบตการตวใหม มชอเรยกวา “Windows 8” ความพเศษของระบบปฏบตการรนใหมน กคอ เปนระบบปฏบตการ Windows รนแรกทถกสรางข นมาใหทางานไดท งบนคอมพวเตอร (PC), Notebook และอปกรณแทบเลต (Tablet) โดยทไมโครซอฟทเรยกอปกรณแทบเลตของตวเองวา เซอรเฟส (Surface) หนงสอ “คมอเขยน Windows 8 Apps ดวย VB 2012 และ VC# 2012 สาหรบผเรมตน” เลมน เปนการนาเสนอพ นฐานการพฒนา Windows 8 Apps โดยการใชภาษา VB 2012 & VC# 2012 ซงเปนภาษาทไดรบนยมอยในปจจบน เน อหาทนาเสนอในหนงสอเลมน เรมตนต งแตระดบพ นฐาน ไลไปจนกระทงถงการกาหนดรายละเอยดตางๆ เพอให Windows 8 Apps ของคณ ตรงกบมาตรฐานทไมโครซอฟทกาหนดไว ซงถอเปนรากฐานทมความสาคญเปนอยางมาก กอนทจะพฒนาเขาสระดบการสราง Windows 8 Apps เพอขายจรงใน Windows Store ในลาดบตอไป

ตวอยาง

Page 19: P a g e | 0 4* 0 % F5

ท ำควำมรจกกบ Windows 8 ในขนตน เราสามารถแยก Windows 8 ออกเปน 2 แพลตฟอรม คอ

1.บนคอมพวเตอร เรยกวา Windows 8 Pro รนบนสถาปตยกรรมซพยแบบ x86 (32 บต) และ x64 (64 บต) ทคนเคยกนเปนอยางด คอ ซพยของอนเทล (Intel) และเอเอมด (AMD) โดยท Windows 8 Pro ทรนบนซพยตระกล x86/x64 น สามารถใชงาน Windoows 8 ไดทงแบบ Desktop Mode กบ Modern UI Style Mode

รปท 1-1 แสดง Windows 8 แบบ Modern UI Style Mode จากรปท 1-1 แอพพลเคชนทตดต งบน Windows 8 แบบน ผเขยนขอเรยกวา Windows 8 Apps ตว

อยาง

Page 20: P a g e | 0 4* 0 % F5

รปท 1-2 แสดง Windows 8 แบบ Desktop Mode จากรปท 1-2 เปนสภาพแวดลอมของ Windows ทเราคนเคยกนเปนอยางดมาต งแต Windows 7 และเวอรชนกอนหนาน 2.บนอปกรณแทบเลต สาหรบ Windows 8 ทรนอยบนแทบเลต ยงสามารถแยกออกเปน 2 แบบ คอ

รนบนสถำปตยกรรมซพยแบบ x86/x64 สงผลใหคณสามารถใช Windows 8 ไดท งแบบ Desktop Mode กบ Modern UI Style Mode ยงคงเรยกวา Windows 8 Pro เชนเดม

รนบนสถำปตยกรรมซพยแบบ ARM เรยกวา Windows RT สาหรบแทบเลตทใชซพยแบบ ARM สามารถรน Windows RT ไดเพยงอยางเดยวเทาน น โดยท Windows RT กคอ Windows 8 ทม Modern UI Style Mode เปนแกนหลก ถกสรางข นมาใหทางานกบอปกรณแทบเลตเทาน น สงผลใหโปรแกรมสาย .NET จงมพ นทใหมทไมเคยมมากอน นนคอ การเขยนโปรแกรมทเรยกวา

Windows 8 Apps ทสามารถรนไดท งบน PC, Notebook และอปกรณแทบเลตทตดต ง Windows 8 หรอ Windows RT นนเอง

ตวอยาง