الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ترتيب جريد فيو

بدأه Mohammad Ibrahim في 4 يوليو 2012 · 13 رد · 833 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته,

اخواني واخواتي الاعزاء ارجو منكم المساعده

اريد ان اعمل التالي:

انا لدي معلومات اقوم بادخالها عن طريق check box list لنفرض ان لدي عشر اصناف من الطعام (لحم، دجاج، سمك ....... الخ) ومن خلال البرنامج اقوم بحفظهم في srting مفصول بينهم بعلامة الفاصلة ","

string = "لحم ، دجاج ، سمك" وبعدها اقوم في حفظها بقاعدة البيانات SQL 2008

واللي حاب اعمله اني عند القيام باسترجاع البيانات عن طريق ال grid view اريدها انا تكون:

1. لحم

2. دجاج

3. سمك

وفي نفس ال column

ماهي انسب طريقة وكيفية عملها.؟؟

ارجو المساعده لأني احترت من كثرت المحاولات

#2

السلام عليكم ورحمة الله وبركاتة

تحية طيبة لك أخي...

توجد طريقة وهي عن طريق أستخدام Event موجود في الـ GridView ويدعى RowDataBound, والعملية تكون على النحو التالي:

الحصول على الخلية التي تحتاج التعديل عليها ومن ثم تطبق ما تريد. وهذه بعض الأمثلة لربما تساعدك...

GridView.RowDataBound Event

asp.net GridView RowDataBound Event example: how to format specific row

و أيضاً توجد هناك طريقة وهي أستخدام أداة الـ Repeater داخل الـ GridView تستطيع البحث عن هذه الفكرة وستجد مواضيع كثيرة على الانترنت.

و أيضاً تستطيع أستخدام GridView بداخل GridView

Nested GridView in ASP.NET

في أعتقادي الشخصي الطريقة التي تتبعها متعبة جداً, وهو أن تقوم بوضع جميع أصناف الطعام في نفس الجدول, و من أحد الأسباب التي أجدها صعبة في هذه الطريقة هو مرحلة التعديل على البيانات, ماذا لو تم كتابة أسم أحد الأصناف بالخطأ؟؟ و أيضا في مرحلة التعديل نفسها سوف تكون متعبة..

لماذا أخي لا تجعل الأصناف في جدول مستقل و تأخد بالأعتبار العلاقة بين الجدول المرتبط بهذا الجدول ( أقصد جدول الأصناف ) ومن ثم عرض البيانات.

Good luck

My Latest

Hello Entity Framework Code First

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

#3
D a r K T o u c h كتب:

السلام عليكم ورحمة الله وبركاتة

تحية طيبة لك أخي...

توجد طريقة وهي عن طريق أستخدام Event موجود في الـ GridView ويدعى RowDataBound, والعملية تكون على النحو التالي:

الحصول على الخلية التي تحتاج التعديل عليها ومن ثم تطبق ما تريد. وهذه بعض الأمثلة لربما تساعدك...

GridView.RowDataBound Event

asp.net GridView RowDataBound Event example: how to format specific row

و أيضاً توجد هناك طريقة وهي أستخدام أداة الـ Repeater داخل الـ GridView تستطيع البحث عن هذه الفكرة وستجد مواضيع كثيرة على الانترنت.

و أيضاً تستطيع أستخدام GridView بداخل GridView

Nested GridView in ASP.NET

في أعتقادي الشخصي الطريقة التي تتبعها متعبة جداً, وهو أن تقوم بوضع جميع أصناف الطعام في نفس الجدول, و من أحد الأسباب التي أجدها صعبة في هذه الطريقة هو مرحلة التعديل على البيانات, ماذا لو تم كتابة أسم أحد الأصناف بالخطأ؟؟ و أيضا في مرحلة التعديل نفسها سوف تكون متعبة..

لماذا أخي لا تجعل الأصناف في جدول مستقل و تأخد بالأعتبار العلاقة بين الجدول المرتبط بهذا الجدول ( أقصد جدول الأصناف ) ومن ثم عرض البيانات.

Good luck

اشكرك اخي العزيز على الرد السريع

في الحقيقة انا اريد عمله في جدول واحد حتى يكون سهل في حال استرجاع البيانات وقرائتها

انا اللي حاب اعمله هو:

عرض جميع الطلبات على grid

مثلا طلبية محمد : 1. لحم 2. دجاج

سعيد : 1. لحم

وغيرها من الاسامي

#4

قم بستبدل رمز ; الي <br/> في جملة الاستعلام في قاعدة البيانات

#5
KARIMSOFT كتب:

قم بستبدل رمز ; الي <br/> في جملة الاستعلام في قاعدة البيانات

اخي العزيز انا اقوم بحفظ البيانات على الطريقة التاليه:

دجاج، لحم ، سمك

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

1. دجاج

2. لحم

3. سمك

#6

سينفذ المطلوب من غير ترقيم كالاتي

دجاج

لحم

سمك

تم تعديل هذه المشاركة بواسطة KARIMSOFT في 8 يوليو 2012 في 14:48

#7
KARIMSOFT كتب:

سينفذ المطلوب من غير ترقيم كالاتي

دجاج

لحم

سمك

هل يمكنك كتابة مثال يوضحلي طريقة التغيير(الكود).؟

#8

جرب هذا المثال وهذا الموقع قد يفيدك

الرابط

WebSite1.rar

تم تعديل هذه المشاركة بواسطة KARIMSOFT في 12 يوليو 2012 في 15:19

#9

اشكر جميع الاخوان اللي حالوا يساعدوني

بعد عدة محاولات لم اتمكن من عمل المطلوب ولم استطع الوصول للنتيجه اللي اريدها

ممكن تفيدوني اكثر.؟؟؟

وشاكر لكم حسن تعاونكم

Mohammad Ibrahim كتب:

اشكر جميع الاخوان اللي حالوا يساعدوني

بعد عدة محاولات لم اتمكن من عمل المطلوب ولم استطع الوصول للنتيجه اللي اريدها

ممكن تفيدوني اكثر.؟؟؟

وشاكر لكم حسن تعاونكم

وهذه طريقة تخزين البيانات هل يمكنني عمل حل في طريقة التخزين لاني جرت VBcRLf ولم تعمل؟؟؟

Dim food As String = ""

Dim price As Integer = 0

Dim xx As String = 0

Dim itemCount22 As Integer

itemCount22 = CheckBoxList2.Items.Count

Dim bb(8) As String

For i = 0 To (itemCount22 - 1)

If CheckBoxList2.Items(i).Selected = True Then

xx = xx + 1

bb(i) = CheckBoxList2.Items(i).Text

price = price + CheckBoxList2.Items(i).Value

food = food + bb(i) + ","

Else

End If

Next i

#10

اخي استخدم الاجرائية ال splite والتي خرجها يكون عبارة عن مصفوفة

ومن ثم ربط الكريد فيو بهذه المصفوفة وفي حال اردت تغيير اسم العمود يمكنك تغييره عن طريق الحدث RowDataBound الامر يتبع لك

#11
بالعربي نتقدم كتب:

اخي استخدم الاجرائية ال splite والتي خرجها يكون عبارة عن مصفوفة

ومن ثم ربط الكريد فيو بهذه المصفوفة وفي حال اردت تغيير اسم العمود يمكنك تغييره عن طريق الحدث RowDataBound الامر يتبع لك

شكرا اخي العزيز

قمت بعملية ال split في ال RowDataBound

الآن اريد ارجاع المعلومات الى الجريد:

ماهي الطريقة المناسبه؟

وهذا الكود اللي قمت بكتابته

Protected Sub grdfoods_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles grdfoods.RowDataBound

If e.Row.RowType = DataControlRowType.DataRow Then

Dim aryPoint As String = e.Row.Cells(4).Text

Dim foods As String() = aryPoint.Split(New Char() {","c})

e.Row.Cells(4).Text = foods

End If

لا يمكنني عمل المطلوب لأنه يعطيني Error

Value of type 'one dimensional array of string' connot be converted to 'string'

#12

أخي يمكنك اضافة كريد فيو بدون اي تعديل بمعنى بشكل الافتراضي فقط

ومن ثم بالكود كمثال عملية تعبئة المصفوفة واستخدام مصدر البيانات للكريد فيو كالتالي :

        if (!IsPostBack)
	    {
            string str = "لحم, دجاج, سمك , تفاح , برتقال";

            Array ar = str.Split(',');
            GridView1.DataSource = ar;
            GridView1.DataBind();
	    }

ومن بحدث RowDataBound لتغيير اسم العمود :

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType==DataControlRowType.Header)
        {
            e.Row.Cells[0].Text = "الطعام";
        }
    }

مثال قاعدة بيانات.rar

#13
بالعربي نتقدم كتب:

أخي يمكنك اضافة كريد فيو بدون اي تعديل بمعنى بشكل الافتراضي فقط

ومن ثم بالكود كمثال عملية تعبئة المصفوفة واستخدام مصدر البيانات للكريد فيو كالتالي :

        if (!IsPostBack)
	    {
            string str = "لحم, دجاج, سمك , تفاح , برتقال";

            Array ar = str.Split(',');
            GridView1.DataSource = ar;
            GridView1.DataBind();
	    }

ومن بحدث RowDataBound لتغيير اسم العمود :

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType==DataControlRowType.Header)
        {
            e.Row.Cells[0].Text = "الطعام";
        }
    }

المعلومات اللي آخذها بتكون مخزنه في قواعد البيانات

وانا اريد التعديل على الجدول اللي بستقبله من قواعد البيانات

#14

اخي الكود مجرد مثال اما تعاملك مع قاعدة البيانات فهو امر روتيني

انصحك بتعلم كيفية تصميم كيانات قواعد البيانات بالشكل الامثل

مواضيع مشابهة