منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : استدعاء البيانات وتعبئتها داخل أعمدة الداتاقريدفيو
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم 

سؤال ع السريع 

كيف أقوم بأستدعاء وتعبئتها داخل أعمدة الداتاقريدفيو التي أنا قمت بأضافتها من الخصائص

علما استخدم هذا الكود لتعبئة الداتا قريد 


PHP كود :
      DataGridView1.DataSource dt 

وعند أقوم بالتعبئة بتجاهل الأعمدة ويقوم بأضافة الأعمدة اللتي بالداتا وشكرا
السؤال لم يتضح
قم بإرفاق ولو مثال
فهمت من سؤالك بأنك قمت بتصميم الداتاقريدفيو وعملت الاعمدة اثناء التصميم ..

بعد تشغيل البرنامج تريد جلب البيانات من جدول قاعدة البيانات لنفس الأعمدة الموجوده في الداتاقريدفيو ،،

الحل كالتالي أكتب الأسطر هذي :


كود :
DataGridView1.Columns(0).DataPropertyName = "itemcode"
        DataGridView1.Columns(1).DataPropertyName = "itemname"
       DataGridView1.Columns(2).DataPropertyName = "itemkind"
        DataGridView1.Columns(3).DataPropertyName = "itemprice"
        DataGridView1.Columns(4).DataPropertyName = "itemquantity"

DataGridView1.AutoGenerateColumns = False

ملاحظة : العمود 0 = الحقل الأول في جدول القاعدة ،، (itemcode) استبدله بالحقل الأول في جدول قاعدة البيانات
والعمود 1 = الحقل الثاني في جدول القاعدة ،، وهكذا


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


كود :
.........
DataGridView1.DataSource = dt
وعليكم السلام ورحمة الله وبركاته

تعال فى كود الاستعلام وطبق التالى

لنقول ان كود الاستعلام عبارة عن التالى
كود :
SELECT * FROM test

أو
كود :
SELECT id, c_name, c_date, c_notes FROM test

كل ما عليك ان تجعل كود الاستعلام بهذا الشكل
كود :
SELECT id AS 'رقم التسلسل', c_name AS 'اسم العميل', c_date AS 'التاريخ', c_notes AS 'ملاحظات' FROM test

لاحظ ان تم درج اسماء الاعمودة التى مطلوب ظهورها فى الداتا جريد

ومن ثم تم تعيين اسم لكل عمود كما تشاء بدلاً من الاسم الافتراضى بقاعدة البيانات من خلال
كود :
AS 'الاسم كما تشاء وباى لغة'

تحياتى لك
وتمنياتى لك التوفيق
السلام عليكم
مشكورين اخوتي علي المساعدة
تم حل المشكلة بالكود وعن طريقة اخي حريف برمجة 

بس هناك مشكلة بعد استدعاء البيانات لايمكني إضافة صف بهذا الكود 
PHP كود :
           DataGridView1.Rows.Add(TextBox1.TextTextBox2.TextTextBox9.TextTextBox10.TextTextBox11.TextTextBox12.TextTextBox13.Text

ولكن قبل الاستدعاء يتم اضافة هذا الصف ارجو حل لهذه المشكلة

وشكرا

(27-02-19, 03:40 AM)حريف برمجة كتب : [ -> ]فهمت من سؤالك بأنك قمت بتصميم الداتاقريدفيو وعملت الاعمدة اثناء التصميم ..

بعد تشغيل البرنامج تريد جلب البيانات من جدول قاعدة البيانات لنفس الأعمدة الموجوده في الداتاقريدفيو ،،

الحل كالتالي أكتب الأسطر هذي :


كود :
DataGridView1.Columns(0).DataPropertyName = "itemcode"
        DataGridView1.Columns(1).DataPropertyName = "itemname"
       DataGridView1.Columns(2).DataPropertyName = "itemkind"
        DataGridView1.Columns(3).DataPropertyName = "itemprice"
        DataGridView1.Columns(4).DataPropertyName = "itemquantity"

DataGridView1.AutoGenerateColumns = False

ملاحظة : العمود 0 = الحقل الأول في جدول القاعدة ،، (itemcode) استبدله بالحقل الأول في جدول قاعدة البيانات
والعمود 1 = الحقل الثاني في جدول القاعدة ،، وهكذا


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


كود :
.........
DataGridView1.DataSource = dt

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

بس هناك مشكلة بعد استدعاء البيانات لايمكني إضافة صف بهذا الكود 
PHP كود :

كود :
           DataGridView1.Rows.Add(TextBox1.Text, TextBox2.Text, TextBox9.Text, TextBox10.Text, TextBox11.Text, TextBox12.Text, TextBox13.Text) 

ولكن قبل الاستدعاء يتم اضافة هذا الصف ارجو حل لهذه المشكلة

وشكرا

(27-02-19, 03:40 AM)حريف برمجة كتب : [ -> ]فهمت من سؤالك بأنك قمت بتصميم الداتاقريدفيو وعملت الاعمدة اثناء التصميم ..

بعد تشغيل البرنامج تريد جلب البيانات من جدول قاعدة البيانات لنفس الأعمدة الموجوده في الداتاقريدفيو ،،

الحل كالتالي أكتب الأسطر هذي :


كود :
DataGridView1.Columns(0).DataPropertyName = "itemcode"
        DataGridView1.Columns(1).DataPropertyName = "itemname"
       DataGridView1.Columns(2).DataPropertyName = "itemkind"
        DataGridView1.Columns(3).DataPropertyName = "itemprice"
        DataGridView1.Columns(4).DataPropertyName = "itemquantity"

DataGridView1.AutoGenerateColumns = False

ملاحظة : العمود 0 = الحقل الأول في جدول القاعدة ،، (itemcode) استبدله بالحقل الأول في جدول قاعدة البيانات
والعمود 1 = الحقل الثاني في جدول القاعدة ،، وهكذا


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


كود :
.........
DataGridView1.DataSource = dt

(27-02-19, 04:02 AM)elgokr كتب : [ -> ]
وعليكم السلام ورحمة الله وبركاته

تعال فى كود الاستعلام وطبق التالى

لنقول ان كود الاستعلام عبارة عن التالى
كود :
SELECT * FROM test

أو
كود :
SELECT id, c_name, c_date, c_notes FROM test

كل ما عليك ان تجعل كود الاستعلام بهذا الشكل
كود :
SELECT id AS 'رقم التسلسل', c_name AS 'اسم العميل', c_date AS 'التاريخ', c_notes AS 'ملاحظات' FROM test

لاحظ ان تم درج اسماء الاعمودة التى مطلوب ظهورها فى الداتا جريد

ومن ثم تم تعيين اسم لكل عمود كما تشاء بدلاً من الاسم الافتراضى بقاعدة البيانات من خلال
كود :
AS 'الاسم كما تشاء وباى لغة'

تحياتى لك
وتمنياتى لك التوفيق

مشكور أخي elgokr على المساعدة دائما
اتمنى التوضيح اكثر بخصوص الاستدعاء

هل المقصود بها عند اتمام الاستعلام وتعبئة الداتا جريد من خلال 
كود :
DataGridView1.DataSource = dt

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

تحياتى لك
وتمنياتى لك التوفيق
[quote pid='137582' dateline='1551268423']
اتمنى التوضيح اكثر بخصوص الاستدعاء

هل المقصود بها عند اتمام الاستعلام وتعبئة الداتا جريد من خلال 
كود :
DataGridView1.DataSource = dt

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

تحياتى لك
وتمنياتى لك التوفيق

[/quote]

نعم اخي قوم بتعبئة الداتا بهذا الكود ولكن كود اضافة الصف لا يعمل بعد التعبئة
(27-02-19, 05:30 PM)نور الهدى الهدى كتب : [ -> ][quote pid='137582' dateline='1551268423']
اتمنى التوضيح اكثر بخصوص الاستدعاء

هل المقصود بها عند اتمام الاستعلام وتعبئة الداتا جريد من خلال 
كود :
DataGridView1.DataSource = dt

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

تحياتى لك
وتمنياتى لك التوفيق

نعم اخي قوم بتعبئة الداتا بهذا الكود ولكن كود اضافة الصف لا يعمل بعد التعبئة
[/quote]

طبعاً اكيد لأن الداتاقريدفيو أصبحت مرتبطة بالداتاسورس dt ،،

حسب الكود الواضح (DataGridView1.DataSource = dt)

اذا اردت تضيف صف للداتاقريدفيو سيكون كالتالي :

أولاً إضافة الصف للداتاسورس ومن ثم اسناد الداتاسورس مره أخرى للداتاقريدفيو ،،،

الحل :

تعريف dt على مستوى المشروع بالأعلى ،، بالضبط اسفل : (Public Class Form1) اذا كانت اسم الفورم هكذا ،،،

ثم في بوتن إضافة صف بعد تعبئة الداتاقريدفيو كالتالي :

كود :
'تعريف متغير صف جديد
Dim newRow As DataRow

'الصف يبدأ من الصفر على حسب عدد الأعمدة لديك
'الأرقام (1,11,111 .....) تكون القيم المراد إضافتها للداتاقريدفيو حسب ترتيب الأعمدة
       newRow = dt.NewRow
       newRow.Item(0) = "1"
       newRow.Item(1) = "11"
       newRow.Item(2) = "111"
       newRow.Item(3) = "1111"
       newRow.Item(4) = "11111"

'ادراج الصف الجديد للداتاتيبل
       dt.Rows.Add(newRow)

'اداج مصدر البيانات للداتاقريدفيو
       DataGridView1.DataSource = dt
(27-02-19, 03:40 AM)حريف برمجة كتب : [ -> ]فهمت من سؤالك بأنك قمت بتصميم الداتاقريدفيو وعملت الاعمدة اثناء التصميم ..

بعد تشغيل البرنامج تريد جلب البيانات من جدول قاعدة البيانات لنفس الأعمدة الموجوده في الداتاقريدفيو ،،

الحل كالتالي أكتب الأسطر هذي :


كود :
DataGridView1.Columns(0).DataPropertyName = "itemcode"
        DataGridView1.Columns(1).DataPropertyName = "itemname"
       DataGridView1.Columns(2).DataPropertyName = "itemkind"
        DataGridView1.Columns(3).DataPropertyName = "itemprice"
        DataGridView1.Columns(4).DataPropertyName = "itemquantity"

DataGridView1.AutoGenerateColumns = False

ملاحظة : العمود 0 = الحقل الأول في جدول القاعدة ،، (itemcode) استبدله بالحقل الأول في جدول قاعدة البيانات
والعمود 1 = الحقل الثاني في جدول القاعدة ،، وهكذا


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


كود :
.........
DataGridView1.DataSource = dt

(27-02-19, 05:53 PM)حريف برمجة كتب : [ -> ]
(27-02-19, 05:30 PM)نور الهدى الهدى كتب : [ -> ][quote pid='137582' dateline='1551268423']
اتمنى التوضيح اكثر بخصوص الاستدعاء

هل المقصود بها عند اتمام الاستعلام وتعبئة الداتا جريد من خلال 
كود :
DataGridView1.DataSource = dt

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

تحياتى لك
وتمنياتى لك التوفيق

نعم اخي قوم بتعبئة الداتا بهذا الكود ولكن كود اضافة الصف لا يعمل بعد التعبئة

طبعاً اكيد لأن الداتاقريدفيو أصبحت مرتبطة بالداتاسورس dt ،،

حسب الكود الواضح (DataGridView1.DataSource = dt)

اذا اردت تضيف صف للداتاقريدفيو سيكون كالتالي :

أولاً إضافة الصف للداتاسورس ومن ثم اسناد الداتاسورس مره أخرى للداتاقريدفيو ،،،

الحل :

تعريف dt على مستوى المشروع بالأعلى ،، بالضبط اسفل : (Public Class Form1) اذا كانت اسم الفورم هكذا ،،،

ثم في بوتن إضافة صف بعد تعبئة الداتاقريدفيو كالتالي :

كود :
'تعريف متغير صف جديد
Dim newRow As DataRow

'الصف يبدأ من الصفر على حسب عدد الأعمدة لديك
'الأرقام (1,11,111 .....) تكون القيم المراد إضافتها للداتاقريدفيو حسب ترتيب الأعمدة
       newRow = dt.NewRow
       newRow.Item(0) = "1"
       newRow.Item(1) = "11"
       newRow.Item(2) = "111"
       newRow.Item(3) = "1111"
       newRow.Item(4) = "11111"

'ادراج الصف الجديد للداتاتيبل
       dt.Rows.Add(newRow)

'اداج مصدر البيانات للداتاقريدفيو
       DataGridView1.DataSource = dt

[/quote]

مشكور جدا ولكن عندما لايوجد بيانات في الداتا قريد يعطي خطاء لان السورس فارغ
العفو ،،

قبل هذا السطر :

'تعريف متغير صف جديد
Dim newRow As DataRow

ضع هذا الكود وهو مسؤول عن التحقق من السورس اذا فارغ يضيف مباشرة للقريد :

كود :
If dt.Columns.Count = 0 Then
           DataGridView1.Rows.Add("1", "11", "111", "1111", "11111")
           Exit Sub
       End If
الصفحات : 1 2