تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] مشكلة في التسلسل الرقمي ؟
#1
بسم الله الرحمن الرحيم
السلام عليكم

لدي ليست فيو، تقوم بعرض سجلات، قمت بوضع عامود على يمين تلك السجلات، من اجل اسناد رقم تصاعدي لتلك السجلات.
تم كتابة الكود التالي
كود :
Sub PopulateListView()
        Dim i As Integer = 1

        With ListView1
            .Clear()
            .View = View.Details
            .Columns.Add("Beda_id", 0, HorizontalAlignment.Center)
            .Columns.Add("م", 60, HorizontalAlignment.Left)
            .Columns.Add("اســم المـــادة", 250, HorizontalAlignment.Left)
            .Columns.Add("سعر الشــراء", 100, HorizontalAlignment.Left)
            .Columns.Add("سعر المبيـع", 100, HorizontalAlignment.Left)
            .Columns.Add("ربح المـادة", 100, HorizontalAlignment.Left)
            .Columns.Add("ملاحظــــات", 280, HorizontalAlignment.Left)


            .GridLines = False
            .FullRowSelect = True
            .Cursor = Cursors.Hand
            .BackColor = Color.Beige
            .ForeColor = Color.Black


            Dim Lst As New ListViewItem
            Dim List = From B In db.Fixed_Bedas Select B

            For Each x In List

                Lst = New ListViewItem(x.Beda_id)
                Lst.SubItems.Add(i)
                Lst.SubItems.Add(x.Beda_Name)

                Lst.SubItems.Add(GetValue(x.Shra_Price))
                Lst.SubItems.Add(GetValue(x.Mabee_Price))
                Lst.SubItems.Add(GetValue(x.Mabee_Price - x.Shra_Price))
                Lst.SubItems.Add(x.Beda_Note)
                .Items.Add(Lst)
                i += 1
            Next
        End With

        For Each LVI As ListViewItem In ListView1.Items
            LVI.SubItems.Item(3).Text = FormatNumber(LVI.SubItems.Item(3).Text, 2)
            LVI.SubItems.Item(4).Text = FormatNumber(LVI.SubItems.Item(4).Text, 2)
            LVI.SubItems.Item(5).Text = FormatNumber(LVI.SubItems.Item(5).Text, 2)
        Next

    End Sub

الا ان الرقم يكون متبوعا، باسم المادة، ويسبب ان الارقام لا تكون متسلسلة كما اريد

- تم اجراء محاولة للحل، عن طريق الغاء الخاصية sorting
وجعلها تاخذ القيمة None

الارقام اصبحت مرتبة تصاعدية كما اريد، ولكن المشكلة ان اسماء المواد اصبحت غير مرتبة

ارجو المساعدة في تحقيق
1- جعل الارقام التي على يمين اسم المادة ارقام تصاعدية
2- بنفس الوقت ان تكون اسماء المواد مفرزة ابجديا تصاعديا

ارجو المساعدة
والف شكر


الملفات المرفقة صورة/صور
           
الرد
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته

أخي الكريم تستطيع بعد عمل تعبئة البيانات في الليست فيو
أن تقوم بإعاداة توزيع الأرقام بهذه الطريقة

كود :
For i = 0 To ListView1.Items.Count - 1
            ListView1.Items(i).Text = i + 1
        Next
الرد
تم الشكر بواسطة: kslawy
#3
السلام عليكم
شكرا اخي sooriaty
على اجابتك

تم محاولة تعبئة العامود بالارقام، بعد ان تم تعبئة الليست فيو
الا ان النيجة كانت غير مرضية على الاطلاق
كود :
Dim Lst As New ListViewItem
            Dim List = From B In db.Fixed_Bedas Select B

            For Each x In List
                Lst = New ListViewItem(x.Beda_id)
                Lst.SubItems.Add("")
                Lst.SubItems.Add(x.Beda_Name)

                Lst.SubItems.Add(GetValue(x.Shra_Price))
                Lst.SubItems.Add(GetValue(x.Mabee_Price))
                Lst.SubItems.Add(GetValue(x.Mabee_Price - x.Shra_Price))
                Lst.SubItems.Add(x.Beda_Note)
                .Items.Add(Lst)
            Next

            For Each x In List
                Lst = New ListViewItem(x.Beda_id)
                Lst.SubItems.Add(i)
                .Items.Add(Lst)
                i += 1
            Next

        End With

ارجو المساعدة
والف شكر


الملفات المرفقة صورة/صور
   
الرد
تم الشكر بواسطة:
#4
السلام عليكم

الحمد لله توصلت للحل، وقد احببت ان اضع الحل، حتى يستفيد منه الاخوة
كود :
Sub PopulateListView()

        Dim i As Integer = 1
        Dim xx As Integer

        With ListView1
            .Clear()
            .View = View.Details
            .Columns.Add("Beda_id", 0, HorizontalAlignment.Center)
            .Columns.Add("م", 60, HorizontalAlignment.Left)
            .Columns.Add("اســم المـــادة", 250, HorizontalAlignment.Left)
            .Columns.Add("سعر الشــراء", 100, HorizontalAlignment.Left)
            .Columns.Add("سعر المبيـع", 100, HorizontalAlignment.Left)
            .Columns.Add("ربح المـادة", 100, HorizontalAlignment.Left)
            .Columns.Add("ملاحظــــات", 280, HorizontalAlignment.Left)

            .GridLines = False
            .FullRowSelect = True
            .Cursor = Cursors.Hand
            .BackColor = System.Drawing.ColorTranslator.FromHtml(My_back_Color_Listview)
            .ForeColor = Color.Black


            Dim Lst As New ListViewItem
            Dim List = From B In db.Fixed_Bedas Select B

            For Each x In List
                Lst = New ListViewItem(x.Beda_id)
                Lst.SubItems.Add("")
                Lst.SubItems.Add(x.Beda_Name)

                Lst.SubItems.Add(GetValue(x.Shra_Price))
                Lst.SubItems.Add(GetValue(x.Mabee_Price))
                Lst.SubItems.Add(GetValue(x.Mabee_Price - x.Shra_Price))
                Lst.SubItems.Add(x.Beda_Note)
                .Items.Add(Lst)
            Next
        End With

        xx = ListView1.Items.Count

        For i = 1 To xx
            ListView1.Items.Item(i - 1).SubItems(1).Text = i
        Next i

        For Each LVI As ListViewItem In ListView1.Items
            LVI.SubItems.Item(3).Text = FormatNumber(LVI.SubItems.Item(3).Text, 2)
            LVI.SubItems.Item(4).Text = FormatNumber(LVI.SubItems.Item(4).Text, 2)
            LVI.SubItems.Item(5).Text = FormatNumber(LVI.SubItems.Item(5).Text, 2)
        Next

        ListView1.Sorting = SortOrder.Ascending
        ListView1.ListViewItemSorter = New ListViewItemComparer(2)
        ListView1.Sort()
    End Sub


الملفات المرفقة صورة/صور
   
الرد
تم الشكر بواسطة: sooriaty03


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة خاصة بالاتصال بمحرك قاعدة البيانات اكسس 2010 مع فيجوال استوديو 2017 Mohamed Samy21 3 0 منذ 1 ساعه مضت
آخر رد: Mohamed Samy21
  مشكلة ارجو حلها في التعامل مع الصور كناري008 16 0 منذ 3 ساعة مضت
آخر رد: atefkhalf2004
  مشكلة بعد تحزيم البرنامج altho8 0 0 14-02-18, 04:09 PM
آخر رد: altho8
  [VB.NET] ممكن حل مشكلة التعديل من خلال البرنامج فى قاعدة البيانات MOSTAFA.KAMEL 7 0 14-02-18, 02:15 AM
آخر رد: MOSTAFA.KAMEL
Tongue [VB.NET] رحم الله من ساعدني في مشكلة الوقت تظهر لي هذه الرسالة MohammedHikmat 1 0 13-02-18, 06:17 PM
آخر رد: محمود صالح
  عندي مشكلة في البحث بالتاريخ فيجوال بيسك 2008 وقاعدة بيانات اكسس Nedaa 4 0 10-02-18, 08:21 PM
آخر رد: Nedaa
  مشكلة في عمل البرنامج على اجهزة مرتبطة بسيرفر aftfm 3 0 10-02-18, 05:09 PM
آخر رد: hglogtd
  [VB.NET] مشكلة فى جلب البيانات MOSTAFA.KAMEL 9 4 08-02-18, 12:46 AM
آخر رد: MOSTAFA.KAMEL
  [VB.NET] مشكلة عند تشغيل البرنامج = Too many arguments to 'Public Sub New() e-coder 4 0 06-02-18, 01:07 PM
آخر رد: e-coder
  [VB.NET] حل مشكلة البرنامج MOSTAFA.KAMEL 3 0 06-02-18, 01:49 AM
آخر رد: MOSTAFA.KAMEL

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


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