Month: November 2020

การทำ Partial Rendering สำหรับ User Controls

สำหรับท่านใดที่ยังใช้งาน ASP.NET Web From ในการพัฒนาเว็บไซต์อยู่ คงคุ้นเคยกับการใช้งาน User Controls เป็นอย่างดีเนื่องจากเป็นการสร้าง UI เพื่อใช้งานซ้ำในหลายๆ Page ซึ่งเป็นที่นิยม สำหรับบทความนี้จะแนะนำวิธีการ แยกเรนเดอร์ User Controls ที่มีปัญหาโหลดช้าอันเนื่องมาจากสาเหตุใดก็ตาม และเป็นข้อมูลเพิ่มเติมที่ผู้ใช้ไม่จำเป็นต้องเห็นเป็นอย่างแรก โดยมีขั้นตอนดังนี้ 1.เพิ่ม HTML Container element เช่น Div, Panel ในหน้าจอ ที่ต้องการใช้งาน เช่น 2.เพิ่ม Ajax Controls toolkit : Dynamic Populate ใช้เพื่อ Render HTML…

ทำให้แอปพลิเคชันอ่านหรือสร้าง Barcode ได้ด้วย ZXing (“zebra crossing”)

เนื่องด้วยได้รับโจทย์ให้พัฒนาแอปพลิเคชัน ที่สามารถแสกนบาร์โค้ดได้เมื่อได้ค้นหาดูก็พบชื่อของ Library ที่แรกเริ่มเขียนด้วยภาษา Java และถูก Port ให้รองรับภาษาอื่นๆอีกมากมาย เป็นที่นิยม และเป็น Open Source นั้นคือ ZXing โดยในบทความนี้จะแสดงตัวอย่างวิธีการนำ ZXing.Net.Mobile มาใช้งานร่วมกับ Xamarin.iOS ขั้นตอนการนำมาใช้งาน ตัวอย่างในบทความใช้ Visual Studio 2019 16.8.0 ติดตั้ง Work Load Xamarin.iOS 1.สร้างโปรเจคใหม่โดยเลือก Template ชื่อ iOS App (Xamarin) และกำหนดค่าดังรูป 2. โดยโครงสร้างไฟล์ของโปรเจคมีดังรูป 3. เปิดไฟล์ Main.storybord…

การเชื่อมต่อ AwesomeTable กับ Google Site

ต่อเนื่องจาก Blog : การใช้งานโปรแกรม AwesomeTable แบบง่ายเมื่อสร้าง AwesomeTable เรียบร้อยแล้ว สามารถนำมาใช้งานบน Google Site ได้ ลองมาดูวิธีการทำกันนะคะ ต้องการนำ AwesomeTable ไปเชื่อมต่อกับ Google site โดยคลิกที่ “EMBED” 2. เลือกแท็บ Direct Link ให้คลิกปุ่ม “Copy” 3. เปิด Google Site ที่ผู้ใช้ต้องการนำ AwesomeTable ไปใช้งาน คลิก “Embed” 4. วาง Embed แล้วคลิกปุ่ม “Insert”…

การใช้งานโปรแกรม AwesomeTable แบบง่าย

เป็นเว็บที่จัดทำเป็น Data Table มีการใช้งานผ่าน Google sheet ที่มีรูปแบบ Template หลากหลายให้เลือกใช้งานได้ และสามารถนำไปใช้งานกับ Google site ได้ทันที เว็บไซต์ : https://awesome-table.com/สามารถอ่านรายละเอียดจาก AwesomeTable : https://support.awesome-table.com/hc/en-us ตัวอย่างนี้จะเป็นการใช้จาก Template ที่มีให้เลือก ลองมาดูกันเลยว่าทำกันอย่างไร ง่ายๆ ใครๆ ก็ทำได้ค่ะ 1. เข้าเว็บไซต์ : https://awesome-table.com/ เลือก “TEMPLATE GALLERY” 2. แสดง Template ที่ให้เลือกใช้งานได้มากมาย ผู้ใช้สามารถเลือกตัวอย่าง Template ที่รูปแบบลักษณะคล้ายกับงานที่ต้องการ…

แก้ปัญหาอัปโหลด Android App ไม่ผ่านเพราะเปลี่ยนคนอัปโหลด

เคยไหมที่ฝากทีมอื่นที่เขามี account google play console อยู่แล้ว เพื่อฝากอัพเดทแอปที่เราเพิ่ม feature ใหม่ๆของแอปที่เราพัฒนา ตอนนั้นก็ได้ลองผิดลองถูกกันไปเรื่อยๆ เพราะว่าตอนที่เรา build app มันจะสร้าง signing key ในการอัปโหลดที่ผูกติดกับ user ดังนั้นเมื่อเปลี่ยน user ในการอัปโหลดก็ต้องอัปโหลด signing key ใหม่ วันนี้จะมา KM การเปลี่ยน signing key เผื่อใครเคยเจอปัญหาเดียวกัน หน้าจอแสดงการอัปโหลด Android app ไม่ผ่าน เพราะ signing key ไม่ตรงกับ user เก่า…

Word : การปรับรูปแบบ font สารบัญตามที่เราต้องการ

กลับมาอีกครั้งกับเรื่อง Word สืบเนื่องมาจาก Blog ที่แล้วที่กล่าวถึงเรื่องการได้มีส่วนช่วยเพื่อนร่วมงานในการทำคู่มือ จึงได้มีโอกาสในการใช้งาน Word ซึ่งปัญหาที่พบอีกเรื่องก็คือ Font สารบัญ ไม่ใช่รูปแบบ Font ที่ต้องการคือ TH SarabunPSK ผู้เขียนจึงได้เขียนเรื่องนี้ขึ้นมาเพื่อที่ผู้อ่านจะสามารถนำไปใช้งานได้ ตัวอย่าง ผู้เขียนได้ทำการสร้างเนื้อหาทดสอบ ใน Style Heading และใส่สารบัญเรียบร้อย ดังภาพ จะเห็นได้ว่า Font ในเนื้อหา เป็น TH SarabunPSK ตามที่ตั้งค่าใน Style Heading1 ไว้ตามที่ต้องการ แต่ส่วนสารบัญนั้นเป็น Font แปลก ๆ ไม่ใช่ Font ที่เราต้องการ…

Word : การใส่รูปแบบเลขหน้าที่ต่างกันในไฟล์เดียวกัน

เคยไหมที่เวลาผู้อ่านจะสร้างคู่มือหรือเอกสารที่ต้องมีคำนำ สารบัญ ต่อด้วยเนื้อหา อาจจะจบด้วยภาคผนวก ซึ่งแต่ละส่วนนั้นมีการแสดงเลขหน้าที่ไม่เหมือนกัน ส่วนคำนำ สารบัญ อาจจะใช้เลขหน้าเป็นตัวอักษร เช่น ก, ข แต่ส่วนเนื้อหาใช้ตัวเลขอารบิค ในช่วงนี้ ผู้เขียนได้มีการช่วยเหลือเพื่อนร่วมงานในเรื่องนี้ในการทำคู่มือจึงได้นำลงมาใส่ไว้ใน Blog เผื่อเป็นประโยชน์แก่ท่านผู้อ่าน ตัวอย่าง ผู้เขียนสร้างเนื้อหามา 2 บรรทัดเพื่อเป็นเนื้อหาทดสอบในการใส่เลขหน้า จากนั้นทำการใส่ตัวแบ่งหน้า โดยเลือกเป็น Section Breaks -> Next Page จากนั้นใส่เลขหน้าเป็นเลขอารบิคปกติ เลขหน้าจะเริ่มที่หน้าที่ 1 และ 2 ไปเรื่อย ๆ จากนั้นผู้อ่านของดูที่แถบ Ribbon ใน Tab Header &…

แสดงข้อมูล Memory CPU Disk ด้วย C# EP.3

แล้วก็มาถึง EP สุดท้ายของซีรีส์นี้ นั่นก็คือการดึงข้อมูลการใช้งานพื้นที่บน Disk ก่อนจะไปหาพื้นที่ disk เราต้องไปหา drive กันก่อนว่ามี drive อะไรบ้าง จากนั้นจึงไปหาข้อมูล disk ของ drive นั้นๆ โดยเราจะใช้ class DriveInfo สำหรับดึงข้อมูล drive ต่างๆ ออกมา ดังโค้ดตัวอย่าง โดยเราสามารถดึงข้อมูล drive ต่างๆ ได้ผ่านเมทธอด GetDrives() และเข้าถึงชื่อ drive ได้ผ่าน property Name เมื่อมาถึงขั้นตอนนี้ เราก็สามารถเข้าถึงข้อมูลพื้นที่ disk และการใช้งานของแต่ละ drive…

JavaScript : ไม่ควรใช้ For Loop ใน Arrays

เชื่อว่า Programmer/Developer JavaScript ล้วนเคยผ่านการใช้งาน For Loops ในการ Coding กันมาแล้ว จำเป็นที่คุณต้องเลือกใช้มันให้เหมาะกับแต่ละสถานการณ์ แนะนำว่า ไม่ควรใช้ For Loop ใน Arrays แต่ขอแนะนำให้ใช้ .forEach() Method แทน .forEach() Method คืออะไร .forEach()  เป็น Built-in Method ใน Array Class ซึ่งได้รับการเปิดตัวใน ECMAScript 2015 (หรือที่เรียกกันว่า ES6) โดย Method จะทำการ Callback เป็น Arguments…

ปรับแต่ง SQL ให้เร็วขึ้น

เมื่อคุณ Run SQL Queries แล้วมันทำงานช้าขึ้นมา เราจะต้องกลับเข้าไปดู Queries ที่เขียนว่าจะสามารถแก้ไขจุดที่เป็นต้นเหตุได้อย่างไร บทความนี้เราจะมาแนะนำดูวิธีปรับแต่ง Queries ที่ทำงานช้าให้เร็วยิ่งขึ้นกัน ไม่จำเป็นต้องใช้ข้อมูลทุกอย่าง พิจารณาว่าจำเป็นต้องใช้ SELECT * หรือไม่? ควรจะดึงเฉพาะ Column ที่ต้องการเพื่อให้ได้ผลที่รวดเร็วขึ้น แทนที่จะใช้ SELECT * เพื่อดึงข้อมูลทั้งหมดออกมา หากมี Table ที่มีขนาดใหญ่หรือมีข้อมูลปริมาณมากใน Table ซึ่งมีแนวโน้มที่จะทำให้ Query Engine ต้องทำงานหนักในการดึงข้อมูลทุกอย่างไปสู่ Client Side ก็อย่าลืมที่จะใช้ LIMIT เพื่อจำกัดจำนวนของผลลัพธ์ เว้นเสียแต่ว่าต้องการดูข้อมูลในทุก ๆ Row ระวังการใช้ NOT…