تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف يمكن كتابة الوقت داخل datagridview
#1
السلام عليكم
كيف يمكن وضع تنسيق معين داخل datagridview
مثال
عندى datagridview بها عمود أريد عند كتابة المستخدم مثلا رقم 12 يكون التنسيق 12:00:00
وإذا كتب 1 يكون التنسيق 1:00:00
وهو عبارة عن وقت

شكرا جزيلا
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته

يتم ذلك في حدث CellFormatting التابع لأداة الـ Datagridview :

كود :
Private Sub DataGridView1_CellFormatting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting        Try
            If e.ColumnIndex = 1 Then ' نتحقق من أن العمود الذي يتم تحريره هو العمود المطلوب
                If e.Value IsNot Nothing Then
                    If e.Value.ToString.Contains(":") = False Then
                        Dim val As String = e.Value
                        val = val & ":0"
                        e.Value = val
                    End If
                    Dim d As DateTime = DateTime.Parse(e.Value.ToString)
                    Dim time As String = d.ToString("hh:mm:ss")
                    e.Value = time
                    e.FormattingApplied = True
                End If
            End If
        Catch ex As Exception
            e.FormattingApplied = False
        End Try
    End Sub

قد توجد طرق أخرى مختصرة الأكواد فقط ابحث بالإنترنت .

****
***
**
*
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: asemshahen5 , asemshahen5
#3
مشكور أخى الكريم
الرد }}}
تم الشكر بواسطة: asemshahen5
#4
ولكن هناك مشكلة عند كتابة 1230 سيكون الناتج 1230:00 ومن المفترض ان يكون 12:30:00
الرد }}}
تم الشكر بواسطة: asemshahen5
#5
هل هناك حل ؟؟؟
الرد }}}
تم الشكر بواسطة: asemshahen5
#6
هل هناك حل ؟؟؟
الرد }}}
تم الشكر بواسطة: asemshahen5
#7
matrixmas كتب :ولكن هناك مشكلة عند كتابة 1230 سيكون الناتج 1230:00 ومن المفترض ان يكون 12:30:00

هل يوجد حل لهذة المشكلة ؟؟
ارجو مساعتى
الرد }}}
تم الشكر بواسطة: asemshahen5
#8
ارجو من الاخوة مساعدتى
الرد }}}
تم الشكر بواسطة: asemshahen5
#9
السلام عليكم ،، ممكن مداخلتي ما تكون مفيده بتلك الدرجه و لكن حبيت انوه ،،،

في بعض الاحيان نواجه مشكله بخصوص شيء معين مثلا الوقت الذي تتكلم عنه ،، فسيكون حله باحدى الطريقتين ::

1) أن تتأكد من المدخلات ، اي من اين مصدر الوقت ،، و بذلك تجبر المستخدم على حفظ الوقت بالصيغه التي تريدها و بهذه انحلت مشكله ،، و عند استدعائها ستظهر بالشكل الذي تريده .

2) الحل الثاني : -و بالعاميه أعتبره حل ترقيع لان الحل يكمن بشكل صحيح فالنقطه الاولى و هو المثالي ، لان المدخلات الصحيحه يعني مخرجات سليمه - في حالة نص الوقت دائما اربع خانات من الممكن انت تستخدم دالة اقتصاص النص mid و تقتص اول رقمين من النص و تقتص اخر رقمين و تضع بينهما علامة نقطتين راسيه ،، و بكذا انحلت المشكله ،،

ملاحظه : اذا كان غير هذا فاذكر الحالات التي يمكن ظهور الوقت بها او حتى على الاقل مصدرها فمثلا اذا كانت ثلاث خانات سوف تتورط بدون مخرج كمثال 113،، ممكن تكون 11:3 او 1:13 و بذلك ادخلت نفسك بخوارزميات لا نهايه لها ،، لذلك تبقى الخطوه الأولى هي الاصح ،، و بذلك يترك لك خيار استخدام الأداة DateTimePicker و تغيير خاصية format الى custom و ثم تغير الخاصية customformat الى "hh:mm tt" و تغير الخاصية showUpDown الى true و تضع بجانبه زر عند الضغط على حفظ يضيفها الى الخلية المحدده في dataGraidview و بذلك تلاشيت الاستخدام الخاطئ للمستخدم ، .

تقبل ودي و احترامي
الرد }}}
تم الشكر بواسطة: asemshahen5
#10
السكر المغرور كتب :السلام عليكم ،، ممكن مداخلتي ما تكون مفيده بتلك الدرجه و لكن حبيت انوه ،،،

في بعض الاحيان نواجه مشكله بخصوص شيء معين مثلا الوقت الذي تتكلم عنه ،، فسيكون حله باحدى الطريقتين ::

1) أن تتأكد من المدخلات ، اي من اين مصدر الوقت ،، و بذلك تجبر المستخدم على حفظ الوقت بالصيغه التي تريدها و بهذه انحلت مشكله ،، و عند استدعائها ستظهر بالشكل الذي تريده .

2) الحل الثاني : -و بالعاميه أعتبره حل ترقيع لان الحل يكمن بشكل صحيح فالنقطه الاولى و هو المثالي ، لان المدخلات الصحيحه يعني مخرجات سليمه - في حالة نص الوقت دائما اربع خانات من الممكن انت تستخدم دالة اقتصاص النص mid و تقتص اول رقمين من النص و تقتص اخر رقمين و تضع بينهما علامة نقطتين راسيه ،، و بكذا انحلت المشكله ،،

ملاحظه : اذا كان غير هذا فاذكر الحالات التي يمكن ظهور الوقت بها او حتى على الاقل مصدرها فمثلا اذا كانت ثلاث خانات سوف تتورط بدون مخرج كمثال 113،، ممكن تكون 11:3 او 1:13 و بذلك ادخلت نفسك بخوارزميات لا نهايه لها ،، لذلك تبقى الخطوه الأولى هي الاصح ،، و بذلك يترك لك خيار استخدام الأداة DateTimePicker و تغيير خاصية format الى custom و ثم تغير الخاصية customformat الى "hh:mm tt" و تغير الخاصية showUpDown الى true و تضع بجانبه زر عند الضغط على حفظ يضيفها الى الخلية المحدده في dataGraidview و بذلك تلاشيت الاستخدام الخاطئ للمستخدم ، .

تقبل ودي و احترامي

أخى الكريم شكرا جزيلا على مداخلتك
أفضل حل هو وضع أداة ال DateTimePicker ولكن فى حالة ان الداتا غريد تحتوى على أكثر من 100 صف فسوف يستغرق المستخدم وقت طويل جدا للإدخال تكون كتابة الصيغة أسهل يدويا من وجه نظرى
الرد }}}
تم الشكر بواسطة: asemshahen5


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Exclamation [سؤال] كيف يمكن الغاء السوال عند الكتابة على ملف موجود dell 0 48 19-03-24, 01:23 AM
آخر رد: dell
  تعديل بيانات عمود DataGridView دفعة واحدة مصمم هاوي 2 164 05-03-24, 08:27 PM
آخر رد: مصمم هاوي
  فلترة datagridview بدون قاعدة بيانات صالح عبدالله 3 295 02-02-24, 04:07 PM
آخر رد: صالح عبدالله
  [VB.NET] ظهور التاريخ غير مرتب بالأقدم في datagridview مبرمج صغير 1 4 304 26-01-24, 03:41 PM
آخر رد: atefkhalf2004
  [VB.NET] التاريخ في أداة أبو سامر لطباعة DataGridView مبرمج صغير 1 17 629 26-01-24, 01:52 AM
آخر رد: مبرمج صغير 1
  مشكلة في datagridview Adata 4 310 17-01-24, 03:00 PM
آخر رد: aljzazy
  [سؤال] كيفية انشاء فورم داخل مشروعى عاصم النجار 2 304 05-01-24, 12:36 AM
آخر رد: HALIM ELEULMA
  حماية عمود داخل ورقة الاكسل العيدروس 3 190 05-01-24, 12:21 AM
آخر رد: HALIM ELEULMA
Lightbulb [VB.NET] إطهار الصورة بمقاس معين في DataGridView أبو خالد الشكري 2 323 14-12-23, 03:01 PM
آخر رد: أبو خالد الشكري
Question [VB.NET] اسم عمود الأرقام في DataGridView أبو خالد الشكري 6 606 03-12-23, 08:01 AM
آخر رد: أبو خالد الشكري

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم