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

عرض التفاصيل

بدأه C#Dev في 29 يوليو 2011 · 5 رد · 424 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أنشأت form لليحث وهو كالتالي :

كتابة اسم داخل ال Text Box ويتم عرض النتائج المطابقة لكلمة البحث في ال GridView .

ما أريده هو الضغط مرتين على إحدى نتائج البحث في ال GridView حتى يتم عرض البيانات بالتفصيل.

وليكن تيجة البحث هو اسم مثل " محمد " عند الضغط مرتين على كلمة محمد يتم عرض كافة البيانات المتعلقة به من اسم وعمر وجنسية .... إلخ

أرجو المساعدة

#2

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

اخي ارجو التوضيح عن مكان النقر ومكان ظهور النتيجة؟!!

.:: Wish to become better and better ::.

#3
اقتباس
اخي ارجو التوضيح عن مكان النقر

إذا كان هنا طرق مختلفة للنقر أرجو توضيح أفضلها.

اقتباس
ومكان ظهور النتيجة؟!!

تعرض البيانات في Form جديد.

#4

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

اخي يمكنك تحديد الصف المراد عرض تفاصيله وذلك بالنقر على العمود الرمادي على اليمين وبعدها اكتب الكود التالي

FormDetails frm = new FormDetails();
frm.Label1.Text = DataGridView1.SelectedRows[0].Cells[0].Value.ToString();
frm.Label2.Text = DataGridView1.SelectedRows[0].Cells[1].Value.ToString();
frm.Label3.Text = DataGridView1.SelectedRows[0].Cells[2].Value.ToString();

طبعا قمت بعرض اول ثلاثة اعمدة لأخذ الفكرة, لكن عليك تغيير الخاصية Modifier لمربعات العنوان في فورم التفاصيل الى Public ليتم الوصول اليها بعد اسم الفورم

.:: Wish to become better and better ::.

#5

شكرا على مشاركتك VB Helper .

سوف أجربها .

أجريت بحث ووجدت طريقة أخرى لعرض البيانات وكن بها مشكلة صغير , وهي كالتالي:

-- في Form البحث ننقر نقرتين على الحادث RowHeaderMouseDoubleClick الخاص بال GridView ثم إضافة الكود التالي:

  if (this.dataGridView1.SelectedRows.Count > 0)
            {
                Form_Update editForm = new Form_Update(this.dSemp, this.dSemp.Employ.Rows.IndexOf((DSemp.EmployRow)((DataRowView)this.dataGridView1.SelectedRows[0].DataBoundItem).Row));
                editForm.Show();
            }

قي Form التفاصيل نضيف الكود التالي :

     public Form_Update(DSemp DS, int postion)
        {
            InitializeComponent();

            this.dSemp = DS;

            this.employBindingSource.DataSource = this.dSemp;
            this.employBindingSource.Position = postion;

        }

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

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

يتم عرض التفاصيل السجل الذي تم النقر بجانبه في صفحة فورم التفاصيل , السجل الذي يتم عرضه هو السجل الأول فقط

مثلا لوضغط بجانب السجل العاشر سوف يتم عرض تفاصيل السجل الاول وليس العاشر, تتبعت البيانات وجدت بأنه يجع القمة الصحيحة للسجل ولكن عند العرض يتم عرض السجل الاول

أرجو النظر في هذهالمشكلة ,, وشكرا

#6

تم تجربة الكود VB Helper وهو يعمل 100 %.

أما الطريقة الثانية عرفت سبب المشكله وتم حلها, هي أفضل في حال كان هناك عدد كبير من الحقول تريد عرضها بكل التفاصيل

تقوم بإضافة حقول الجدول من ال DataSources ثم تستخدم DataSet لعرض تفاصيل سجل محدد .

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