Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > จาก Code และภาค มีวิธีทำให้มันเป็นรูปแบบ dd-MM-yyyy ไหมครับ ผมลองเปลี่ยนดูแล้วทำไม่ได้ C# Code ทดสอบ ตามภาพแล้วทำไม่ได้ ต้องทำยังไงมีวิธีแนะนำผมหน่อยครับ


 

[.NET] จาก Code และภาค มีวิธีทำให้มันเป็นรูปแบบ dd-MM-yyyy ไหมครับ ผมลองเปลี่ยนดูแล้วทำไม่ได้ C# Code ทดสอบ ตามภาพแล้วทำไม่ได้ ต้องทำยังไงมีวิธีแนะนำผมหน่อยครับ

 
Topic : 132757



โพสกระทู้ ( 86 )
บทความ ( 0 )



สถานะออฟไลน์



จาก Code และภาค มีวิธีทำให้มันเป็นรูปแบบ dd-MM-yyyy ไหมครับ ผมลองเปลี่ยนดูแล้วทำไม่ได้
C# Code ทดสอบ ตามภาพแล้วทำไม่ได้ ต้องทำยังไงมีวิธีแนะนำผมหน่อยครับ
Code (C#)
1.DateTime daValues = DateTime.Now;
2.           string MyDt = daValues.ToString("'yyyy-MM-dd'");
3.           TextBox3.Text = DateTime.Now.ToString(MyDt);


Code (ASP)
1.<asp:TextBox type="date" ID="TextBox3"  runat="server" Width="151px" name="party-time"  Height="22px"  >


asdasd



Tag : Web (ASP.NET), C#



ประวัติการแก้ไข
2018-12-13 17:02:48
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-12-13 17:02:02 By : wiraphon View : 3960 Reply : 28
 

 

No. 1



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (C#)
1.string.Format("{0:dd-MMM-yyyy HH:mm}", Convert.ToDateTime(sDate));

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-14 09:38:23 By : mr.win
 

 

No. 2



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (C#)
01.public static string DisplayDateTime(object sDate)
02. {
03.     try
04.     {
05. 
06.         if (sDate == System.DBNull.Value || sDate == null || sDate.ToString() == string.Empty)
07.         {
08.             return string.Empty;
09.         }
10.         else
11.         {
12.             return string.Format("{0:dd-MMM-yyyy HH:mm}", Convert.ToDateTime(sDate));
13.         }
14. 
15.     }
16.     catch (Exception ex)
17.     {
18.         return sDate.ToString();
19.     }
20. 
21. }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-14 09:38:42 By : mr.win
 

 

No. 3



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

=> .Net Application ใช้ DateTime รูปแบบวันที่ให้ถูกต้องตาม Format ของ พ.ศ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-14 09:39:16 By : mr.win
 

 

No. 4



โพสกระทู้ ( 124 )
บทความ ( 0 )



สถานะออฟไลน์





ประวัติการแก้ไข
2018-12-14 11:02:19
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-14 10:57:23 By : outhai
 

 

No. 5

Guest


@Wiraphon
ถามสิบคนคำตอบมันก็ไม่แตกต่างกับคนที่่สิบเอ็ด "เอิ้นว่า"
--- Web Forms Application ตายแล้ว (ดูจาก .NET Core xx.xx มันถอกออกไปหมดเลย)

มีอยู่ทางเดียวเท่านั้นที่ทำให้มันไม่ตายนั่นก็คือ ทำทุกฯทาง ห้าม PostBack เช่น

Code (XML)
1.<asp:TextBox type="date" ID="TextBox3"  runat="server" Width="151px" name="party-time"  Height="22px"  >

ก็เปลี่ยนเป็น
Code (XML)
1.<input type="text" id="txtTotalPrice" value="123.456" />


และใช้ JavaScript/Jquery ช่วย อทิเช่น
query.inputmask.date.extensions.js หรือตัวอื่นฯตามที่พึงพอใจ หาง่ายยิ่งกว่าจ่ายเงินให้กาหลีเสียอีก
หรือจะเขียนเองก็ได้

ชี้เป้าให้แล้ว ถ้ายิงปืนไม่เป็น ก็เปลี่ยนอาชีพไปขายประกัน/etc... อย่ามาเลยทางสายโปรแกรมเมอร์
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-16 21:31:19 By : หน้าฮี
 

 

No. 6

Guest


จาก #NO5 ผมประเมินดูแล้วมันดูโหดร้ายเกินไป (ใครจะไปรู้ มีน้องสาวหลายคนและแต่ละคนสวยฯทั้งนั้น ก็อาจเป็นไปได้)

ลองศึกษาดู TypeScript/Angular/NodeJS
เผื่อจะเจอในสิ่งที่ใช่ และเหมาะกับตัวเอง ก็อาจเป็นไปได้เหมือนกัน

ปล. ผมใช้มาหมดแล้ว แต่ใช้ไม่เคยหมด มีพันผมใช้แค่หนึ่ง

Code (XML)
1.<script src="<%= Page.ResolveUrl("~/")%>Scripts/angular.min.js"></script>
2.<script src="<%= Page.ResolveUrl("~/")%>Scripts/angular-route.min.js"></script>
3.<script src="<%= Page.ResolveUrl("~/")%>Scripts/angular-animate.min.js"></script>
4.<script type="text/javascript">
5.    angular.element(document.getElementsByTagName('head')).append(angular.element('<base href="' + window.location.pathname + '" />'));    
6.</script>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-16 21:40:52 By : หน้าฮี
 

 

No. 7

Guest


จาก #NO6 ผมใช้ Angular จุดประสงค์ 3 ข้อ คือ
1. เปลี่ยน Page ไม่ให้มัน Refresh All Browser
---- เช่นเปลี่ยนจาก PageA --> PageB ---> PageBที่หาร เป็นต้น
2. ไม่ให้ Web Forms มันตาย ดังคำร่ำลือ
3. อินเทนด์/ใหม่มา เก่าก็ยังอยู่ พวกเอ็งใช้เป็น ตรูก็ใช้เป็น
---- สิ่งที่ดูดีและเหนือกว่านั่นคือ ตรูรู้จักประยุกต์ใช้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-16 21:54:37 By : หน้าฮี
 

 

No. 8

Guest


เดี๋ยวจะหาว่ามั่ว เปลี่ยนเพจ (PageA --> PageB --> PageC --> etc...)
แบบว่าหมอยไม่กระดิก แม้ใช้พัดลมงานวัดเป่า

Code (JavaScript)
01.(function (angular) {
02.    'use strict';
03.    angular.module('ngViewPIS', ['ngRoute', 'ngAnimate'])
04.        .run(function ($rootScope) {
05.            $rootScope.xShow = false;
06.        })
07.      .config(['$routeProvider', '$locationProvider',
08.      function ($routeProvider, $locationProvider) {
09.          $routeProvider
10.            .when('/assPO', { // ใบสั่งซื้อ
11.                templateUrl: './assPO/PO.html', //เห็นไหมว่าตรูไม่ได้ใช้ .aspx/Razor Page
12.                controller: 'assPOCtrl',
13.                controllerAs: 'assPO'
14.            })
15.            .otherwise({
16.                redirectTo: '/'
17.            });
18.          //Hacks .NET/.NET Standard Exclude .NET Core
19.          $locationProvider.html5Mode(true);
20.      }])
21.      .controller('MainCtrl', ['$route', '$routeParams', '$location', '$scope',
22.        function MainCtrl($route, $routeParams, $location, $scope) {
23.            this.$route = $route;
24.            this.$location = $location;
25.            this.$routeParams = $routeParams;
26.        }])
27.})(window.angular);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-16 22:02:43 By : หน้าฮี
 

 

No. 9

Guest


จาก #NO8 บรรทัดที่ 11 ผลพลอยได้นั่นก็คือ เอา Source Code บน .NET 4.8.x/ .NET Standard ไปวิ่งบน
.NET Core 2.x/3.x ได้แบบสะบายสะบาย แถมใช้ VB.NET เป็นหลักได้อีกต่างหาก

แต่แต่แต่ ผมพยายามปรับไปใช้ C# .ให้มากที่สุดเท่าที่เป็นไปได้ ยกเว้น อะไรที่สำคัญฯ ผมก็ใช้ VB.NET

แก่นผมใช้ VB.NET 10%
อื่นฯผมใช้ C# 90%


อันนี้คือสิ่งที่คิดเอาไว้ ทำเมื่อไหร่ก็ย่อมได้ และ ทำหรือไม่ทำ มันก็มีค่าเท่ากัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-16 22:38:11 By : หน้าฮี
 

 

No. 10

Guest


Quote:
https://searchcode.com/codesearch/view/96022964/

ผมเป็นคนโง่เกินกว่าที่จะฉลาดได้ ไม่ว่าจะใช้ควยพยายามเท่าไหร่ก็ตาม
Code (JavaScript)
001./*
002.Input Mask plugin extensions
004.Copyright (c) 2010 - 2014 Robin Herbots
005.Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php)
006.Version: 0.0.0
007. 
008.Optional extensions on the jquery.inputmask base
009.*/
010.(function ($) {
011.    //date & time aliases
012.    $.extend($.inputmask.defaults.definitions, {
013.        'h': { //hours
014.            validator: "[01][0-9]|2[0-3]",
015.            cardinality: 2,
016.            prevalidator: [{ validator: "[0-2]", cardinality: 1 }]
017.        },
018.        's': { //seconds || minutes
019.            validator: "[0-5][0-9]",
020.            cardinality: 2,
021.            prevalidator: [{ validator: "[0-5]", cardinality: 1 }]
022.        },
023.        'd': { //basic day
024.            validator: "0[1-9]|[12][0-9]|3[01]",
025.            cardinality: 2,
026.            prevalidator: [{ validator: "[0-3]", cardinality: 1 }]
027.        },
028.        'm': { //basic month
029.            validator: "0[1-9]|1[012]",
030.            cardinality: 2,
031.            prevalidator: [{ validator: "[01]", cardinality: 1 }]
032.        },
033.        'y': { //basic year
034.            validator: "(19|20)\\d{2}",
035.            cardinality: 4,
036.            prevalidator: [
037.                        { validator: "[12]", cardinality: 1 },
038.                        { validator: "(19|20)", cardinality: 2 },
039.                        { validator: "(19|20)\\d", cardinality: 3 }
040.            ]
041.        }
042.    });
043.    $.extend($.inputmask.defaults.aliases, {
044.        'dd/mm/yyyy': {
045.            mask: "1/2/y",
046.            placeholder: "dd/mm/yyyy",
047.            regex: {
048.                val1pre: new RegExp("[0-3]"), //daypre
049.                val1: new RegExp("0[1-9]|[12][0-9]|3[01]"), //day
050.                val2pre: function (separator) { var escapedSeparator = $.inputmask.escapeRegex.call(this, separator); return new RegExp("((0[1-9]|[12][0-9]|3[01])" + escapedSeparator + "[01])"); }, //monthpre
051.                val2: function (separator) { var escapedSeparator = $.inputmask.escapeRegex.call(this, separator); return new RegExp("((0[1-9]|[12][0-9])" + escapedSeparator + "(0[1-9]|1[012]))|(30" + escapedSeparator + "(0[13-9]|1[012]))|(31" + escapedSeparator + "(0[13578]|1[02]))"); }//month
052.            },
053.            leapday: "29/02/",
054.            separator: '/',
055.            yearrange: { minyear: 1900, maxyear: 2099 },
056.            isInYearRange: function (chrs, minyear, maxyear) {
057.                var enteredyear = parseInt(chrs.concat(minyear.toString().slice(chrs.length)));
058.                var enteredyear2 = parseInt(chrs.concat(maxyear.toString().slice(chrs.length)));
059.                return (enteredyear != NaN ? minyear <= enteredyear && enteredyear <= maxyear : false) ||
060.                       (enteredyear2 != NaN ? minyear <= enteredyear2 && enteredyear2 <= maxyear : false);
061.            },
062.            determinebaseyear: function (minyear, maxyear, hint) {
063.                var currentyear = (new Date()).getFullYear();
064.                if (minyear > currentyear) return minyear;
065.                if (maxyear < currentyear) {
066.                    var maxYearPrefix = maxyear.toString().slice(0, 2);
067.                    var maxYearPostfix = maxyear.toString().slice(2, 4);
068.                    while (maxyear < maxYearPrefix + hint) {
069.                        maxYearPrefix--;
070.                    }
071.                    var maxxYear = maxYearPrefix + maxYearPostfix;
072.                    return minyear > maxxYear ? minyear : maxxYear;
073.                }
074. 
075.                return currentyear;
076.            },
077.            onKeyUp: function (e, buffer, opts) {
078.                var $input = $(this);
079.                if (e.ctrlKey && e.keyCode == opts.keyCode.RIGHT) {
080.                    var today = new Date();
081.                    $input.val(today.getDate().toString() + (today.getMonth() + 1).toString() + today.getFullYear().toString());
082.                }
083.            },
084.            definitions: {
085.                '1': { //val1 ~ day or month
086.                    validator: function (chrs, buffer, pos, strict, opts) {
087.                        var isValid = opts.regex.val1.test(chrs);
088.                        if (!strict && !isValid) {
089.                            if (chrs.charAt(1) == opts.separator || "-./".indexOf(chrs.charAt(1)) != -1) {
090.                                isValid = opts.regex.val1.test("0" + chrs.charAt(0));
091.                                if (isValid) {
092.                                    buffer[pos - 1] = "0";
093.                                    return { "pos": pos, "c": chrs.charAt(0) };
094.                                }
095.                            }
096.                        }
097.                        return isValid;
098.                    },
099.                    cardinality: 2,
100.                    prevalidator: [{
101.                        validator: function (chrs, buffer, pos, strict, opts) {
102.                            var isValid = opts.regex.val1pre.test(chrs);
103.                            if (!strict && !isValid) {
104.                                isValid = opts.regex.val1.test("0" + chrs);
105.                                if (isValid) {
106.                                    buffer[pos] = "0";
107.                                    pos++;
108.                                    return { "pos": pos };
109.                                }
110.                            }
111.                            return isValid;
112.                        }, cardinality: 1
113.                    }]
114.                },
115.                '2': { //val2 ~ day or month
116.                    validator: function (chrs, buffer, pos, strict, opts) {
117.                        var frontValue = buffer.join('').substr(0, 3);
118.                        if (frontValue.indexOf(opts.placeholder[0]) != -1) frontValue = "01" + opts.separator;
119.                        var isValid = opts.regex.val2(opts.separator).test(frontValue + chrs);
120.                        if (!strict && !isValid) {
121.                            if (chrs.charAt(1) == opts.separator || "-./".indexOf(chrs.charAt(1)) != -1) {
122.                                isValid = opts.regex.val2(opts.separator).test(frontValue + "0" + chrs.charAt(0));
123.                                if (isValid) {
124.                                    buffer[pos - 1] = "0";
125.                                    return { "pos": pos, "c": chrs.charAt(0) };
126.                                }
127.                            }
128.                        }
129.                        return isValid;
130.                    },
131.                    cardinality: 2,
132.                    prevalidator: [{
133.                        validator: function (chrs, buffer, pos, strict, opts) {
134.                            var frontValue = buffer.join('').substr(0, 3);
135.                            if (frontValue.indexOf(opts.placeholder[0]) != -1) frontValue = "01" + opts.separator;
136.                            var isValid = opts.regex.val2pre(opts.separator).test(frontValue + chrs);
137.                            if (!strict && !isValid) {
138.                                isValid = opts.regex.val2(opts.separator).test(frontValue + "0" + chrs);
139.                                if (isValid) {
140.                                    buffer[pos] = "0";
141.                                    pos++;
142.                                    return { "pos": pos };
143.                                }
144.                            }
145.                            return isValid;
146.                        }, cardinality: 1
147.                    }]
148.                },
149.                'y': { //year
150.                    validator: function (chrs, buffer, pos, strict, opts) {
151.                        if (opts.isInYearRange(chrs, opts.yearrange.minyear, opts.yearrange.maxyear)) {
152.                            var dayMonthValue = buffer.join('').substr(0, 6);
153.                            if (dayMonthValue != opts.leapday)
154.                                return true;
155.                            else {
156.                                var year = parseInt(chrs, 10);//detect leap year
157.                                if (year % 4 === 0)
158.                                    if (year % 100 === 0)
159.                                        if (year % 400 === 0)
160.                                            return true;
161.                                        else return false;
162.                                    else return true;
163.                                else return false;
164.                            }
165.                        } else return false;
166.                    },
167.                    cardinality: 4,
168.                    prevalidator: [
169.                {
170.                    validator: function (chrs, buffer, pos, strict, opts) {
171.                        var isValid = opts.isInYearRange(chrs, opts.yearrange.minyear, opts.yearrange.maxyear);
172.                        if (!strict && !isValid) {
173.                            var yearPrefix = opts.determinebaseyear(opts.yearrange.minyear, opts.yearrange.maxyear, chrs + "0").toString().slice(0, 1);
174. 
175.                            isValid = opts.isInYearRange(yearPrefix + chrs, opts.yearrange.minyear, opts.yearrange.maxyear);
176.                            if (isValid) {
177.                                buffer[pos++] = yearPrefix[0];
178.                                return { "pos": pos };
179.                            }
180.                            yearPrefix = opts.determinebaseyear(opts.yearrange.minyear, opts.yearrange.maxyear, chrs + "0").toString().slice(0, 2);
181. 
182.                            isValid = opts.isInYearRange(yearPrefix + chrs, opts.yearrange.minyear, opts.yearrange.maxyear);
183.                            if (isValid) {
184.                                buffer[pos++] = yearPrefix[0];
185.                                buffer[pos++] = yearPrefix[1];
186.                                return { "pos": pos };
187.                            }
188.                        }
189.                        return isValid;
190.                    },
191.                    cardinality: 1
192.                },
193.                {
194.                    validator: function (chrs, buffer, pos, strict, opts) {
195.                        var isValid = opts.isInYearRange(chrs, opts.yearrange.minyear, opts.yearrange.maxyear);
196.                        if (!strict && !isValid) {
197.                            var yearPrefix = opts.determinebaseyear(opts.yearrange.minyear, opts.yearrange.maxyear, chrs).toString().slice(0, 2);
198. 
199.                            isValid = opts.isInYearRange(chrs[0] + yearPrefix[1] + chrs[1], opts.yearrange.minyear, opts.yearrange.maxyear);
200.                            if (isValid) {
201.                                buffer[pos++] = yearPrefix[1];
202.                                return { "pos": pos };
203.                            }
204. 
205.                            yearPrefix = opts.determinebaseyear(opts.yearrange.minyear, opts.yearrange.maxyear, chrs).toString().slice(0, 2);
206.                            if (opts.isInYearRange(yearPrefix + chrs, opts.yearrange.minyear, opts.yearrange.maxyear)) {
207.                                var dayMonthValue = buffer.join('').substr(0, 6);
208.                                if (dayMonthValue != opts.leapday)
209.                                    isValid = true;
210.                                else {
211.                                    var year = parseInt(chrs, 10);//detect leap year
212.                                    if (year % 4 === 0)
213.                                        if (year % 100 === 0)
214.                                            if (year % 400 === 0)
215.                                                isValid = true;
216.                                            else isValid = false;
217.                                        else isValid = true;
218.                                    else isValid = false;
219.                                }
220.                            } else isValid = false;
221.                            if (isValid) {
222.                                buffer[pos - 1] = yearPrefix[0];
223.                                buffer[pos++] = yearPrefix[1];
224.                                buffer[pos++] = chrs[0];
225.                                return { "pos": pos };
226.                            }
227.                        }
228.                        return isValid;
229.                    }, cardinality: 2
230.                },
231.                {
232.                    validator: function (chrs, buffer, pos, strict, opts) {
233.                        return opts.isInYearRange(chrs, opts.yearrange.minyear, opts.yearrange.maxyear);
234.                    }, cardinality: 3
235.                }
236.                    ]
237.                }
238.            },
239.            insertMode: false,
240.            autoUnmask: false
241.        },
242.        'mm/dd/yyyy': {
243.            placeholder: "mm/dd/yyyy",
244.            alias: "dd/mm/yyyy", //reuse functionality of dd/mm/yyyy alias
245.            regex: {
246.                val2pre: function (separator) { var escapedSeparator = $.inputmask.escapeRegex.call(this, separator); return new RegExp("((0[13-9]|1[012])" + escapedSeparator + "[0-3])|(02" + escapedSeparator + "[0-2])"); }, //daypre
247.                val2: function (separator) { var escapedSeparator = $.inputmask.escapeRegex.call(this, separator); return new RegExp("((0[1-9]|1[012])" + escapedSeparator + "(0[1-9]|[12][0-9]))|((0[13-9]|1[012])" + escapedSeparator + "30)|((0[13578]|1[02])" + escapedSeparator + "31)"); }, //day
248.                val1pre: new RegExp("[01]"), //monthpre
249.                val1: new RegExp("0[1-9]|1[012]") //month
250.            },
251.            leapday: "02/29/",
252.            onKeyUp: function (e, buffer, opts) {
253.                var $input = $(this);
254.                if (e.ctrlKey && e.keyCode == opts.keyCode.RIGHT) {
255.                    var today = new Date();
256.                    $input.val((today.getMonth() + 1).toString() + today.getDate().toString() + today.getFullYear().toString());
257.                }
258.            }
259.        },
260.        'yyyy/mm/dd': {
261.            mask: "y/1/2",
262.            placeholder: "yyyy/mm/dd",
263.            alias: "mm/dd/yyyy",
264.            leapday: "/02/29",
265.            onKeyUp: function (e, buffer, opts) {
266.                var $input = $(this);
267.                if (e.ctrlKey && e.keyCode == opts.keyCode.RIGHT) {
268.                    var today = new Date();
269.                    $input.val(today.getFullYear().toString() + (today.getMonth() + 1).toString() + today.getDate().toString());
270.                }
271.            },
272.            definitions: {
273.                '2': { //val2 ~ day or month
274.                    validator: function (chrs, buffer, pos, strict, opts) {
275.                        var frontValue = buffer.join('').substr(5, 3);
276.                        if (frontValue.indexOf(opts.placeholder[5]) != -1) frontValue = "01" + opts.separator;
277.                        var isValid = opts.regex.val2(opts.separator).test(frontValue + chrs);
278.                        if (!strict && !isValid) {
279.                            if (chrs.charAt(1) == opts.separator || "-./".indexOf(chrs.charAt(1)) != -1) {
280.                                isValid = opts.regex.val2(opts.separator).test(frontValue + "0" + chrs.charAt(0));
281.                                if (isValid) {
282.                                    buffer[pos - 1] = "0";
283.                                    return { "pos": pos, "c": chrs.charAt(0) };
284.                                }
285.                            }
286.                        }
287. 
288.                        //check leap yeap
289.                        if (isValid) {
290.                            var dayMonthValue = buffer.join('').substr(4, 4) + chrs;
291.                            if (dayMonthValue != opts.leapday)
292.                                return true;
293.                            else {
294.                                var year = parseInt(buffer.join('').substr(0, 4), 10);  //detect leap year
295.                                if (year % 4 === 0)
296.                                    if (year % 100 === 0)
297.                                        if (year % 400 === 0)
298.                                            return true;
299.                                        else return false;
300.                                    else return true;
301.                                else return false;
302.                            }
303.                        }
304. 
305.                        return isValid;
306.                    },
307.                    cardinality: 2,
308.                    prevalidator: [{
309.                        validator: function (chrs, buffer, pos, strict, opts) {
310.                            var frontValue = buffer.join('').substr(5, 3);
311.                            if (frontValue.indexOf(opts.placeholder[5]) != -1) frontValue = "01" + opts.separator;
312.                            var isValid = opts.regex.val2pre(opts.separator).test(frontValue + chrs);
313.                            if (!strict && !isValid) {
314.                                isValid = opts.regex.val2(opts.separator).test(frontValue + "0" + chrs);
315.                                if (isValid) {
316.                                    buffer[pos] = "0";
317.                                    pos++;
318.                                    return { "pos": pos };
319.                                }
320.                            }
321.                            return isValid;
322.                        }, cardinality: 1
323.                    }]
324.                }
325.            }
326.        },
327.        'dd.mm.yyyy': {
328.            mask: "1.2.y",
329.            placeholder: "dd.mm.yyyy",
330.            leapday: "29.02.",
331.            separator: '.',
332.            alias: "dd/mm/yyyy"
333.        },
334.        'dd-mm-yyyy': {
335.            mask: "1-2-y",
336.            placeholder: "dd-mm-yyyy",
337.            leapday: "29-02-",
338.            separator: '-',
339.            alias: "dd/mm/yyyy"
340.        },
341.        'mm.dd.yyyy': {
342.            mask: "1.2.y",
343.            placeholder: "mm.dd.yyyy",
344.            leapday: "02.29.",
345.            separator: '.',
346.            alias: "mm/dd/yyyy"
347.        },
348.        'mm-dd-yyyy': {
349.            mask: "1-2-y",
350.            placeholder: "mm-dd-yyyy",
351.            leapday: "02-29-",
352.            separator: '-',
353.            alias: "mm/dd/yyyy"
354.        },
355.        'yyyy.mm.dd': {
356.            mask: "y.1.2",
357.            placeholder: "yyyy.mm.dd",
358.            leapday: ".02.29",
359.            separator: '.',
360.            alias: "yyyy/mm/dd"
361.        },
362.        'yyyy-mm-dd': {
363.            mask: "y-1-2",
364.            placeholder: "yyyy-mm-dd",
365.            leapday: "-02-29",
366.            separator: '-',
367.            alias: "yyyy/mm/dd"
368.        },
369.        'datetime': {
370.            mask: "1/2/y h:s",
371.            placeholder: "dd/mm/yyyy hh:mm",
372.            alias: "dd/mm/yyyy",
373.            regex: {
374.                hrspre: new RegExp("[012]"), //hours pre
375.                hrs24: new RegExp("2[0-9]|1[3-9]"),
376.                hrs: new RegExp("[01][0-9]|2[0-3]"), //hours
377.                ampm: new RegExp("^[a|p|A|P][m|M]")
378.            },
379.            timeseparator: ':',
380.            hourFormat: "24", // or 12
381.            definitions: {
382.                'h': { //hours
383.                    validator: function (chrs, buffer, pos, strict, opts) {
384.                        var isValid = opts.regex.hrs.test(chrs);
385.                        if (!strict && !isValid) {
386.                            if (chrs.charAt(1) == opts.timeseparator || "-.:".indexOf(chrs.charAt(1)) != -1) {
387.                                isValid = opts.regex.hrs.test("0" + chrs.charAt(0));
388.                                if (isValid) {
389.                                    buffer[pos - 1] = "0";
390.                                    buffer[pos] = chrs.charAt(0);
391.                                    pos++;
392.                                    return { "pos": pos };
393.                                }
394.                            }
395.                        }
396. 
397.                        if (isValid && opts.hourFormat !== "24" && opts.regex.hrs24.test(chrs)) {
398. 
399.                            var tmp = parseInt(chrs, 10);
400. 
401.                            if (tmp == 24) {
402.                                buffer[pos + 5] = "a";
403.                                buffer[pos + 6] = "m";
404.                            } else {
405.                                buffer[pos + 5] = "p";
406.                                buffer[pos + 6] = "m";
407.                            }
408. 
409.                            tmp = tmp - 12;
410. 
411.                            if (tmp < 10) {
412.                                buffer[pos] = tmp.toString();
413.                                buffer[pos - 1] = "0";
414.                            } else {
415.                                buffer[pos] = tmp.toString().charAt(1);
416.                                buffer[pos - 1] = tmp.toString().charAt(0);
417.                            }
418. 
419.                            return { "pos": pos, "c": buffer[pos] };
420.                        }
421. 
422.                        return isValid;
423.                    },
424.                    cardinality: 2,
425.                    prevalidator: [{
426.                        validator: function (chrs, buffer, pos, strict, opts) {
427.                            var isValid = opts.regex.hrspre.test(chrs);
428.                            if (!strict && !isValid) {
429.                                isValid = opts.regex.hrs.test("0" + chrs);
430.                                if (isValid) {
431.                                    buffer[pos] = "0";
432.                                    pos++;
433.                                    return { "pos": pos };
434.                                }
435.                            }
436.                            return isValid;
437.                        }, cardinality: 1
438.                    }]
439.                },
440.                't': { //am/pm
441.                    validator: function (chrs, buffer, pos, strict, opts) {
442.                        return opts.regex.ampm.test(chrs + "m");
443.                    },
444.                    casing: "lower",
445.                    cardinality: 1
446.                }
447.            },
448.            insertMode: false,
449.            autoUnmask: false
450.        },
451.        'datetime12': {
452.            mask: "1/2/y h:s t\\m",
453.            placeholder: "dd/mm/yyyy hh:mm xm",
454.            alias: "datetime",
455.            hourFormat: "12"
456.        },
457.        'hh:mm t': {
458.            mask: "h:s t\\m",
459.            placeholder: "hh:mm xm",
460.            alias: "datetime",
461.            hourFormat: "12"
462.        },
463.        'h:s t': {
464.            mask: "h:s t\\m",
465.            placeholder: "hh:mm xm",
466.            alias: "datetime",
467.            hourFormat: "12"
468.        },
469.        'hh:mm:ss': {
470.            mask: "h:s:s",
471.            autoUnmask: false
472.        },
473.        'hh:mm': {
474.            mask: "h:s",
475.            autoUnmask: false
476.        },
477.        'date': {
478.            alias: "dd/mm/yyyy" // "mm/dd/yyyy"
479.        },
480.        'mm/yyyy': {
481.            mask: "1/y",
482.            placeholder: "mm/yyyy",
483.            leapday: "donotuse",
484.            separator: '/',
485.            alias: "mm/dd/yyyy"
486.        }
487.    });
488.})(jQuery);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-16 22:49:49 By : หน้าฮี
 

 

No. 11



โพสกระทู้ ( 86 )
บทความ ( 0 )



สถานะออฟไลน์


ขออภัยทุกท่านที่ทำให้หัวร้อนกันนะครับ ผมทำได้ตั้งแต่วันแรกแล้วครับแล้วผมไม่มีเวลามาปิดกระทู้

ปัญหาคือไม่เกี่ยวกับ Code ครับ มันเกียวกับ format ของ Server ซึ่งผมก็เถียงกับหัวหน้างานตั้งนานว่ามันเกี่ยวกับ Server แต่หัวหน้าบอกว่าไม่เกี่ยว มันเกี่ยวกับ Format ผมเลยไปแอบเปลี่ยน Format Test ดู ผลสรุปว่า จัดรูปแบบได้ตามที่ผมทำครับ

ปล.ต้องขออภัยทุกท่านด้วยนะครับไม่มีเวลามาปิดกระทู้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-21 14:15:11 By : wiraphon
 

 

No. 12

Guest


Quote:
ซึ่งผมก็เถียงกับหัวหน้างานตั้งนานว่ามันเกี่ยวกับ Server แต่หัวหน้าบอกว่าไม่เกี่ยว



คุณโชคดีที่มีหัวหน้า "โง่โง่โง่"

*****
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-24 14:59:20 By : หน้าฮี
 

 

No. 13

Guest


จาก #NO 12 เดี่ยวคุณและหัวหน้าของคุณ จะหาว่าผมมั่ว

วันที่ก็คือวันที่ วันและเวลา และเป็นสากล เสมอ คิดได้แบบนี้ก็แสดงว่าเข้าใจได้ถ่องแท้ สักแต่ว่าเข้าใจ/ทำได้
--- ถ้าจิตใจไม่คับแคบจนเกินไปก็จะเข้าใจความจริงได้

จากตัวอย่างข้างล่าง ไม่จำเป็นต้องอนุมานได้ว่า วันที่ก็คงเป็นเช่นเดียวกัน

Code (VB.NET)
01.Imports System.Globalization
02.  
03.Public Class GlobalizationMgr
04.  
05.    Structure Countries
06.        Public Property ThreeLetterISORegionName As String 'THA
07.        Public Property EnglishName As String 'Thailand
08.        Public Property NativeName As String 'เช่น ไทย, ส.ป.ป ลาว เป็นต้น
09.    End Structure
10.  
11.    Public Shared Function GetCountryInfo() As List(Of String)
12.        Dim lst As New List(Of String)
13.        For Each info As CultureInfo In CultureInfo.GetCultures(CultureTypes.SpecificCultures)
14.            Dim regInfo As RegionInfo = New RegionInfo(info.LCID)
15.            If Not (lst.Contains(regInfo.EnglishName)) Then
16.                lst.Add(regInfo.EnglishName)
17.            End If
18.        Next
19.        lst.Sort()
20.        Return lst
21.    End Function
22.  
23.    Public Shared Function GetCountriesInfo() As List(Of Countries)
24.        Dim lst As New List(Of Countries)()
25.        For Each info As CultureInfo In CultureInfo.GetCultures(CultureTypes.SpecificCultures)
26.            Dim regInfo As RegionInfo = New RegionInfo(info.LCID)
27.            If Not lst.Exists(Function(x) x.EnglishName.Equals(regInfo.EnglishName)) Then
28.                lst.Add(New Countries() With {
29.                                               .ThreeLetterISORegionName = regInfo.ThreeLetterISORegionName,
30.                                               .EnglishName = regInfo.EnglishName,
31.                                               .NativeName = regInfo.NativeName
32.                                             }
33.                        )
34.            End If
35.        Next
36.        Return lst.OrderBy(Function(x) x.ThreeLetterISORegionName).ToList()
37.    End Function
38.  
39.End Class

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-25 10:05:06 By : หน้าฮี
 

 

No. 14

Guest


จาก #NO 13 ถ้าคุณ/หลายฯคน ยังไม่เข้าใจ

ลองนึกถึงคำพูดประโยคนี้ "ความต้องการของลูกค้าคือสิ่งที่สำคัญ"
และ
ลองนึกถึงคำพูดประโยคนี้ "ชีวิตมนุษย์สำคัญที่สุด"

แสดงว่าไม่มีระบบใดฯในโลกนี้ที่จะสามารถรองรับได้
แต่ว่าเราสามารถรับรู้ได้

US? ก็เช่นเดียวกัน

Code (VB.NET)
01.Public Shared Function TryParseExactUS2Thai(ByVal usDateTime As DateTime, Optional ByVal dateSeperate As String = "/") As String
02.    'Config Web Server Timezone = US & Canada (-5)
03.    'in web.config or app.config (Windows Application)
04.    '<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="en-US" uiCulture="en-US" enableClientBasedCulture="false"/>
05. 
06.    Dim thCultureInfo As New System.Globalization.CultureInfo("th-TH") With {.DateTimeFormat = New Globalization.DateTimeFormatInfo() With
07.                                                                                {
08.                                                                                 .Calendar = New System.Globalization.ThaiBuddhistCalendar
09.                                                                                }
10.                                                                            }
11.    Try
12.        Return usDateTime.ToString("yyyy" & dateSeperate & "MM" & dateSeperate & "dd" & " HH:mm:ss tt z g", thCultureInfo)
13.        'Input Date    : 2012/12/31 08:30:20 AM -5 A.D.
14.        'Output String : 2555/12/31 20:30:20 PM +7 พ.ศ.
15.    Catch ex As Exception
16.        Return String.Empty
17.    End Try
18.End Function

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-25 10:20:45 By : หน้าฮี
 

 

No. 15

Guest


Quote:
คำว่า "หัวร้อน"



ผมอธิบายภาษาไทยให้ทุกฯคนได้รับรู้ผ่านตรรกะงานโปรแกรมมิ่ง ด้วยประโยคนี้
Quote:
โลกใบนี้มีอะไร/ไม่มีอะไร


เช่น ร้อน/หนาว
มี/ไม่มี
จน/ไม่จน
เทียมเท่า/ไม่เทียมเท่า
ฉลาด/โง่
...
...
...

ยกตัวอย่างง่ายฯ จน/รวย
คนเราถ้าอายุยืนยาวถึง 90 ปี (ถ้าถึงนะ)

ณ. วันนั้น ทุกฯอย่างก็ไร้ความหมาย นั่นก็แสดงว่า

--- จน/รวย ก็ไม่แตกต่างกัน


เข้าใจบ่อบักหำน้อย


ปล. คืนไหนถ้าผมไม่ได้ดมหอยเมีย ผมนอนไม่หลับ เคยปรึกษาหมอว่าผมเป็นโรคจิตหรือเปล่า หมอตอบว่า ผมก็ทำเช่นเดียวกับคุณ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-25 10:40:44 By : หน้าฮี
 

 

No. 16



โพสกระทู้ ( 65 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 15 เขียนโดย : หน้าฮี เมื่อวันที่ 2018-12-25 10:40:44
รายละเอียดของการตอบ ::
ผมตามแทบทุกโพสที่คุณ คอมเม้น
ผมทำความเข้าใจที่ พี่บอกหลายๆรอบ
ก็ยังไม่เข้าใจสักที

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-25 11:57:03 By : sent
 

 

No. 17

Guest


@ sent
มันก็ไม่แปลกที่คุณจะไม่เข้าใจ และแม้แต่ตัวของผมเองยังไม่เข้าใจตัวเองเลย

ผมเดาเอาว่าสาเหตุน่าจะมาจาก หน่วยนับ ของเราแตกต่างกัน อทิเช่น
ผมอยากเล่นกับหน่วยนับสามระดับ อทิเช่น กล่อง/โหล/ใบ (ใหญ่จริงฯ/กลาง/เล็กที่สุด)

อันนี้เป็นรูปที่ผมทำเอาไว้เมื่อปี พ.ศ. 2553
งานระหว่างทาง6

หน่วยนับของผมเป็นม้วน แต่ของคุณอาจจะเป็นอีกหน่วยหนึ่ง

ปล. คิดอะไรมาก วันพรุ่งนี้ก็เช้าแล้ว จะทำอะไรก็ว่ากันไป
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-25 21:46:32 By : หน้าฮี
 

 

No. 18



โพสกระทู้ ( 65 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 17 เขียนโดย : หน้าฮี เมื่อวันที่ 2018-12-25 21:46:32
รายละเอียดของการตอบ ::
ขอบคุณสำหรับ ความรู้นะครับ
ผมจะทำความเข้าใจกับสิ่งที่คุณพูดให้ได้

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-26 07:58:04 By : sent
 

 

No. 19



โพสกระทู้ ( 9,590 )
บทความ ( 2 )



สถานะออฟไลน์


สรุป แบบง่ายๆ
1 ข้อมูลวันที่ที่ใช้ในการคำนวณ ให้อยู่ในรูป คศ. ซึ่งเป็น วิธีการเก็บสากล
2 เมื่อต้องการโชว์ หน้าจอ ให้ใช้ function ที่ คห 14 มาใช้ คุณจะย้าย ปี ไปไว้หลัง เดือนไว้ กลาง วันไว้หน้า
ก็ทำจากตรงนั้น แต่อย่านำมาคำนวณอะไร เพราะมันไม่ถูกหลักสากล ต้องแปลงเป็นหลักสากลก่อน

เวลาแปลงข้อมูลจากไทยไปสากล ก็จัดรูปแบบให้เป็นตาม คห.17 (ใหญ่จริงฯ/กลาง/เล็กที่สุด หรือ ปปปป/ดด/วว) เป็นหลักเลขสากล
ซึ่งใช้คำนวณได้ ใช้เปรียบเทียบได้ ทุกอย่างที่คุณต้องการอยู่ในคห ที่คุณหน้าฮี โพสต์ไว้นั้นแหล่ะครับ

หาศึกษาการใช้ culture lang เพิ่มเติม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-26 09:39:16 By : Chaidhanan
 

 

No. 20



โพสกระทู้ ( 4,440 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

Code (VB.NET)
01.Imports System.Runtime.CompilerServices
02. 
03.Module Ext_TOR
04.    <Extension()>
05.    Public Function TryParseCultureInfo(ByVal _DateTime As DateTime, Optional ByVal _CultureInfo As String = "th-TH", Optional ByVal _datetimeFormat As String = "yyyy-MM-dd hh:mm:ss") As String
06. 
07.        Dim CultureInfo_ As New System.Globalization.CultureInfo(_CultureInfo)
08.        Try
09.            Return _DateTime.ToString(_datetimeFormat, CultureInfo_)
10.        Catch ex As Exception
11.            Return String.Empty
12.        End Try
13. 
14.    End Function
15.End Module


Code (VB.NET)
1.Public Class Form1
2. 
3.    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
4.        Me.Text = Date.Now.TryParseCultureInfo("th-TH") & "  " & Date.Now.TryParseCultureInfo("en-US")
5.    End Sub
6.End Class

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-26 10:38:19 By : lamaka.tor
 

 

No. 21

Guest


จาก #NO18 - #NO20

โลกโปรแกรมมิ่งมันเปลี่ยนไปและจะไม่มีวันกลับไปเหมือนเดิมได้อีกแล้ว เอาให้ชัดเจนที่สุด
--- รู้และเชี่ยวชาญแค่ภาษาเดียว มันก็ไม่แตกต่างกับอสุจิหลงทางเข้าไปข้างหลัง (ข้างหน้ามีแต่ไม่เข้า)


ในเชิงงานโปรแกรมมิ่งผมเป็นคนที่คิดไปไกลมาก อทิเช่น
--- .NET Core 2.2/3.0 ผมยังไม่ได้ตัดสินใจที่จะกระโดดลงไป (ลงไปตอนนี้ก็เหนื่อยเปล่า)
--- EF-Vxxx (Entity Framework) ก็เช่นเดียวกัน รองรับความต้องการของผมไม่ได้
--- Type Script (ES1-N) ผมก็ยังไม่ได้ตัดสินใจที่จะกระโดกลงไป (ลงไปตอนนี้ก็เหนื่อยเปล่า)
------ ท้ายที่สุดแล้วมันก็แปลงเป็น PURE JavaScript อยู่ดี (AngularJS/Angular_V1-Vx) ก็เช่นเดียวกัน
--- N-tire ---> with my self.
--- Client/Server สำหรับผมมันก็ไม่ตอบโจทย์


จากความคิดเห็นที่ 20 ผมก็มองออกแบบทะลุปรุโปร่ง ดีไหม? ดีแต่ยังไม่ดีที่สุด (ไม่มีอะไรดีที่สุด)


ทางแก้ไขปัญหาของผมก็คือ Back to the basic/สูงสุดคือนสู่สามัญ

นั่นก็คือการใช้ Name Space เข้ามาช่วยแก้ไขปัญหา (บังคับ)
เช่น ฝั่ง Client/ทุกฯอุปกรณ์

Code (JavaScript)
01.WL_Standard = {}  || {}; //Main JavaScript namespace
02.WL_Standard.dateHelper = WL_Standard.dateHelper || {}; //Date Manager namespace
03.(function (wls) {
04.    //return a date.
05.    wls.dateHelper.addDays = function (jsDate, nod) { //nod = number of days.
06.        return jsDate.setDate(jsDate.getDate() + nod);
07.    };
08.    //Input : ISO "2016-12-31T07:45:00Z"
09.    //Output : "31-12-2016"
10.    wls.dateHelper.stringDateDDMMYYYYY = function (strDate) {
11.        let d = new Date(strDate); //ISO "2016-07-27T07:45:00Z"
12.        return ('0' + d.getDate()).slice(-2) + '-' + ('0' + d.getMonth()).slice(-2) + '-' + d.getFullYear();
13.    }
14.}(WL_Standard));



...
...
...
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 14:57:36 By : หน้าฮี
 

 

No. 22

Guest


จาก#NO 21 ยกตัวอย่างเพิ่มเติม เช่น

WebService/Clund ดีไหม ผมตอบว่าดีแต่ยังยังไม่ดีที่สุด ณ.เวลาปัจจุบัน (27 ธันวาคม พ.ศ. 2561)
--- มันมีเทคโนโลยีมากมายที่ต่อยอดมาจาก Web Service ดีกว่า/หลากหลายกว่า เช่น JSON จริงฯ ไม่ใช่ JSON ปลอมฯ
...
...
...
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:09:35 By : หน้าฮี
 

 

No. 23

Guest


อันนี้เป็นโปรแกรมที่ผมสั่ง โปรแกรม ASS Windows Application ให้ทำงานตามที่ผมต้องการ ผ่านเวป
(สั่งได้หมดตามที่ผมต้องการ)



คิดดูว่าตู้นี้มีกี่หัวจ่ายล่ะ?
--- มากกว่าสิบหัวจ่ายก็แล้วกัน


Code (C#)
01./// <summary>
02./// รับค่า จำนวนลิตรที่เต็ม/เต็มจริง/ยอดเงินสุทธิ จาก ASS Application Windows form Client
03./// </summary>
04./// <param name="request"></param>
05./// <param name="connectionId"></param>
06./// <param name="data"></param>
07./// <returns></returns>
08.protected override Task OnReceivedOil(IRequest request, string connectionId, string data)
09.{
10.    //จะทำอะไรก็ว่ากันไปครับผม
11.    //อทิเช่น เก็บค่าล่าสุดเอาไว้ 10 ค่า
12.    int cnt = ASS_Server_CS.ASSConnection.lstMessage.Count();
13.    if (cnt > 10)
14.    {
15.        ASS_Server_CS.ASSConnection.lstMessage.RemoveAt(0); //ถีบตัวแรกออก และถ่างตัวที่สิบ
16.    }
17.    lstMessage.Add(data);
18.    return Connection.MakeLove(data);
19.}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:23:27 By : หน้าฮี
 

 

No. 24

Guest


งานระหว่างทาง8
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:24:09 By : หน้าฮี
 

 

No. 25

Guest


งานระหว่างทาง9
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:39:04 By : หน้าฮี
 

 

No. 26

Guest


ปี พ.ศ 2563 ผมตั้งใจศึกษา PLC ด้วยตัวเอง
ถ้าผมเข้าใจอย่างถ่องแท้ +++++ 55555
ปี พ.ศ 2564 ค่อยมาว่ากันอีกทีหนึ่ง


ปล. ผมเลียหอยเป็น ทำไมจะศึกษา PLC ด้วยตัวเองไม่เป็นล่ะ? +55555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:48:06 By : หน้าฮี
 

 

No. 27

Guest


Code
จะไม่ไปแม้แต่พระนิพพาน จะเวียนว่าย...

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:51:55 By : หน้าฮี
 

 

No. 28

Guest


จาก #NO26 ผมต้องเรียนฟรี แน่นอนว่าผมมีแผน

เผาทำเนียบเม่งเลย
เพราะผมรู้ว่า ใน "คุก" มีสอนฟรี
ข้าวก็ฟรี
อะไรฯก็ฟรี

+55555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-12-27 15:54:26 By : หน้าฮี
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : จาก Code และภาค มีวิธีทำให้มันเป็นรูปแบบ dd-MM-yyyy ไหมครับ ผมลองเปลี่ยนดูแล้วทำไม่ได้ C# Code ทดสอบ ตามภาพแล้วทำไม่ได้ ต้องทำยังไงมีวิธีแนะนำผมหน่อยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่