اخواني الكرام هل من مثال يوضح كيفية التحكم بهذه الأداة:
- تغيير الخلفية
-التحكم في الوان السطور
-اعطاء اسماء للحقول في الاداة غير الموجودة في قاعدة البيانات وغير ذلك
مع جزيل الشكر
اخواني الكرام هل من مثال يوضح كيفية التحكم بهذه الأداة:
- تغيير الخلفية
-التحكم في الوان السطور
-اعطاء اسماء للحقول في الاداة غير الموجودة في قاعدة البيانات وغير ذلك
مع جزيل الشكر
من لمح فجر الأجر هان عليه ظلام التكليف
بالنسبة الأول لتغيير الخلفيه مش عارف انت تقصد تغيير لون الخلفيه وللا إيه ؟؟؟؟؟؟؟؟؟؟؟
لو تقصد تغيير لون الخلفيه استعمل الكود التالى
dataGrid.BackGroundColor=urColor;
2- تغيير لون الأسطر و تغيير رؤوس الالأعمدة دا بيعتمد على حاجة اسمها
DataGridTableStyle
و دا تقدر تظبطه من الخصائص بتاعة الداتا جريد عن طريق الخاصيه اللى اسمها
TableStyles
و دى هتفتحلك نافذة تقدر تظبط فيها الألوان اللى انت عاوزها عن طريق الخصائص فى قسم Colors
بس طبعا بعد لما تعمل إضافة ل table style
و بعد كدا تضغط على الخاصيه اللى اسمها
ColumnsCollection
و تضيف الأعمدة اللى انت عاوزها و تحدد اسمائها و عرضها و كل حاجة
بس لاحظ انك بتربط الtablestyle و الأعمدة اللى فيه بالجداول و العمدة فى dataset او اى مصدر بيانات عن طريق الخاصيه
mappingName لكل واحد منهم
و لازم تكون ظابط datasource للداتا جريد على داتا سيت معينة
أحمد صلاح
//Part1
ds=oper.LoadData("Cources");
DataGridTableStyle tableStyle = new DataGridTableStyle();
tableStyle.MappingName = "Cources";
tableStyle.AlternatingBackColor =Color.AliceBlue;
tableStyle.GridLineColor = System.Drawing.Color.MediumSlateBlue;
//part2
DataGridTextBoxColumn textboxColStyle = null;
textboxColStyle = new DataGridTextBoxColumn();
textboxColStyle.HeaderText = "Cource Id";
textboxColStyle.MappingName = ds.Tables["Cources"].Columns[0].ColumnName;
textboxColStyle.Width=100;
tableStyle.GridColumnStyles.Add(textboxColStyle);
DataGridTextBoxColumn textboxColStyle1 = null;
textboxColStyle1 = new DataGridTextBoxColumn();
textboxColStyle1.HeaderText = "Cource Name";
textboxColStyle1.MappingName = ds.Tables["Cources"].Columns[1].ColumnName;
textboxColStyle1.Width=300;
tableStyle.GridColumnStyles.Add(textboxColStyle1);
DataGridTextBoxColumn textboxColStyle2 = null;
textboxColStyle2 = new DataGridTextBoxColumn();
textboxColStyle2.HeaderText = "Status";
textboxColStyle2.MappingName = ds.Tables["Cources"].Columns[2].ColumnName;
textboxColStyle2.Width=100;
tableStyle.GridColumnStyles.Add(textboxColStyle2);
// part3
DataGridBoolColumn BoolColStyle = null;
BoolColStyle = new DataGridBoolColumn();
BoolColStyle.HeaderText = "Status";
BoolColStyle.MappingName = ds.Tables["Cources"].Columns[3].ColumnName;
BoolColStyle.Width=100;
tableStyle.GridColumnStyles.Add(BoolColStyle);
//part4
dbGrid.TableStyles.Clear();
dbGrid.TableStyles.Add(tableStyle);
//part5
dbGrid.DataSource=ds.Tables["Cources"];من لمح فجر الأجر هان عليه ظلام التكليف
جزاك الله خيراً أخي الكريم..على ما تفضلت به.. وفي ما كتبت أعلاه بعض ما فهمت من كلامك اضافة الى ما توصلت اليه.. أعرضه للفائدة..
في الجزء الاول:
يتم فيه اضافة البيانات الى الداتا سيت (ds) وبعد ذلك اضافة ال Table Style للقيام بالتغييرات المطلوبة.
في الجزء الثاني:
يتم اضافة ثلاثة أعمدة من نوع حقل(TextBox) ووتنسيق كل حقل حسب المطلوب.
في الجزء الثالث:
يتم اضافة حقل من نوع حقل اختيار(Check Box)
في الجزء الرابع:
اضافة Table Style الى الجريد ثم اضافة الجدول الى الداتا جريد في الجزء الأخير..
من لمح فجر الأجر هان عليه ظلام التكليف
الآن أريد أن أسأل أن لم يكن هناك مانع :rolleyes:
كيف لي أن أصل الى قيمة حقل معين؟؟
مثلا عندم أقوم بالنقر المزدوج على صف معين أريد أن أظهر نفس الصف ولكن في شاشة تحتوي على سجل مفرد للقيام بالتعديل وما إلى ذلك..
هل من معين -بعد الله-؟؟ :rolleyes:
من لمح فجر الأجر هان عليه ظلام التكليف
بص يا باشا فى class اسمه HitTestInfo هوا دا بقى متاح الموضوع دا كله
HitTestInfo cellTest=dataGrid.HitTest (e.X,e.Y)
الكود السابق بيرجعلك object من نوع HitTestInfo و دا بيحتوى معلومات عن رقم الصف و العمود اللى انت ضغطت عليهم فى الداتاجريد
method بتاعة الداتا جريد اللى هيا HitTest دى وظيفتها ترجع HitTestInfo للإحداثى X,Y اللى انت بعتهملها و المفروض انك هتبعت الإحداثيين اللى تمت فيهم عملية الضغط
لكن للأسف EventArgs بتاعة DoubleCLick مبتزودكش ببيانات عن X,Y عشان كدا ممكن تستعمل MouseDown بدل DoubleClick و تختبر فيه الخاصيه Clicks بتاعة MouseEventArgs Class
اتعشم اكون قدرت اشرحها وا نت بقى اكيد طبعا عارف إزاى تبعتها لفورم تانى و الشغل الباقى دا
أحمد صلاح
شكراً يا باشا على التفاعل..
لكن هذا الكلاس لا يرجع الا قيمة الاحداثي(0و1)و(1و0)..الخ وليس القيمة لهذه الاحداثيات..كيف لي أن أصل الى قيمة الاحداثي؟؟
من لمح فجر الأجر هان عليه ظلام التكليف
هذا الموضوع مغلق.