รวบรวม Code ต่างๆนานา ที่เคยพบเจอมาจากประสบการณ์

UNDERGROUND PROGRAMMER PRESENT

วันพุธที่ 23 สิงหาคม พ.ศ. 2560

VB.NET Code#3 DataGridView DateTimePickerColumn

DateTimePicker เจ้า Component ตัวนี้หน้าที่ของมันก็คือ รับค่า/แสดงค่า วันที่ (ชื่อมันก็บอก Date Time 😡) การใช้งานก็ง่ายๆ อ่ะนะ ลากมาวางจากนั้นก็กำหนดค่า หรือจะนำไปเป็น ตัวแปรคำนวณต่างๆ ก็ทำได้แหละ แล้วยังไง!!!

---ก็สืบเนื่องจากบทความที่แล้วอ่ะนะ VB.NET Code#2 DataGridViewProgressBarColumn
https://undergroundprogrammer.blogspot.com/2017/08/vbnet-code2-datagridviewprogressbarcolu.html

ปัญหาเดียวกันเลย ใน DataGridView ดันไม่มี Column ที่เป็น DateTimePicker ให้ใช้ (อีกแล้วรึ 😩) ทำไงละทีนี้ มันก็มีทางออกสำหรับนักพัฒนา ก็เก็บเป็น Text Field ไป จะใช้งานก็เลือกไปแสดงใน Component DateTimePicker แล้วกดแก้ไข หรือบางคนก็ พิมพ์เข้าไปเลย แต่ปัญหาที่เจอคือ มันก็ต้องมาคอยตรวจสอบรูปแบบอีกละ เห้อ!!! ยุ่งจังเลย....

เอางี้ละกันหากมีเป็น DateTimeColumn ก็คงจะดี เอาละลุย Let Go!!!!!!

จะได้แบบนี้ละ ต้องสร้างอย่างไงละ ?

เปิด Visual Studio ขึ้นมา เลือกสร้าง Item เป็นชนิด Component Class (อย่างลืมตังชื่อให้มันด้วยละ)
1.สร้าง DateTimePickerCell

* ในส่วนของ Style.Format นั้นเราสามารถเปลี่ยนแปลงได้นะ ในกรณีที่ต้องการให้ Column นี้เป็นรูปแบบของเวลา ซึ่งก็ให้ใช้เป็น  Style.Format = "HH:mm:ss" แทนละกัน สังเกตได้ว่าจะมีการ Inherits กับ TextBoxCell ซึ่งก็เพื่อใช้ในการแสดงผลนั้นเอง 

😶 เอาละได้ส่วนแสดงผลละ ต่อไปก็ต้องสร้างส่วนที่ไว้แก้ไข/เลือกค่าข้อมูลละนะ 

2.สร้าง CalendarEditingControl


3.Main Class.


เสร็จซักที 😵😵😵😵

จากนั้นก็ถึงเวลาที่จะนำไปใช้งานละ

แน่นอนก่อนอื่นเลยนะให้ทำการนำเข้า class ที่สร้างมาหรือ download ไปนี้เข้ามาในโปรเจคของเราก่อนละ (Add Existing Item)

Imports ชื่อโปรเจคเราอ่ะ.DateTimePickerColumn

------------------
       'สร้างตัวแปรแล้วเรียกใช้งาน พร้อมทำการกำหนดคุณสมบัติตามที่ต้องการ จากนั้นก็จับยัด

        Dim Col As New DateTimePickerColumn

        Me.DataGridView1.Columns.Add(Col)

---------------------------

จบสะที ที่นี้เราก็จะได้ DateTimeColumn ไว้ใช้งานละนะ จะให้ดีทำเป็น Class Library แล้ว Built เก็บไว้ก็ดี



โอ้เกือบลืม Link ให้ Download Code 😱😱😱😱😱😱

link:
DateColumn
https://1drv.ms/u/s!AqHkX7xa3W5KgUSjgpWR1hv5FY2j

TimeColumn

https://1drv.ms/u/s!AqHkX7xa3W5KgUVfYM6g7-KRp3V1


-------- แล้วพบกันใหม่ในบทความต่อไปเน้อ หากมีข้อสงสัยประการใดก็ติดต่อสอบถามมาได้นะ 😎

1 ความคิดเห็น: