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

أعضاء منتدانا الغالي
سؤالي هو كيفية التحكم في فورم أو فورمات  و تعديل بعض الخصائص كالقوائم و الأزرار و تعطيل أو تفعيل بعض المهام من فورم اخر  و للتوضيح أكثر فمشروعي عبارة عن برنامج متعدد المستخدمين (مدير البرنامج  , رئيس مكتب ,عون مكتب....الخ)
و لكل مستخدم منهم صلاحيات معينة مسجلة في قاعدة بيانات المستخدمين الخاصة بالبرنامج بحيث يقوم كل مستخدم بمهام معينة في البرنامج
[rtl]المشكل الذي صادفته و لم أعثر على حل له في النت و في المنتدى هو كيفية  تعديل خصائص الفورم  كالقوائم و الأزرار و تعطيل أو تفعيل بعض المهام بحسب صلاحيات  المستخدم فعندما يقوم المستخدم بإدخال الاسم و كلمة السر في فورم الدخول  login  [/rtl]

يقوم الفورم  login  بالتعديل في الفورم  بحسب صلاحيات  المستخدم الحالي   و نفس الشيء بالنسبة للفورم الأخرى و هي بالطبع تكون غير  مفعلة اي لسيت قيد الإستخدام                                                                     و شكرا جزيلا لكم


[rtl] [/rtl]




[rtl] [/rtl]

الرد }}}}
تم الشكر بواسطة:
#2
نحمده ونصلي على رسوله الكريم

في حال اردت الوصول لبعض الادوات في نموذج اخر يلزم تغيير الوصول للادوات من private الى internal ولكن هذا الامر يثقل البرنامج ويزيد من حجمه في الرام ولا ينصح بذلك الا للضرورة....
هناك حل اخر بعمل فئة جديدة class نضع فيها بعض الخصائص للصلاحيات كـ:

كود :
class Role
{
internal static bool Add { get; set; }
internal static bool Delete { get; set; }
}

هذا في الفئة، أما في نموذج تسجيل الدخول:
كود :
Role.Add = User.Add;
Role.Delete = User.Delete;

وفي النموذج الرئيسي:


كود :
private void MainForm_Load(object sender, EventArgs e)
{
button1.Enabled = Role.Add;
....
}
الرد }}}}
تم الشكر بواسطة: info@cnr
#3
السلام عليكم و رحمة الله

احسن الله اليك اخي ربيع
هل تقصد انشاء فئة جديدة class نضع فيها الخصائص للصلاحيات بحيث تكون شبيهة تماما لقاعدة البيانات و عند دخول المستخدم نقوم بنسخ الصلاحيات من قاعدة البيانات في class مثلا:
.database.add= Role.Add
.database.del= Role.del

لك جزيل الشكر
الرد }}}}
تم الشكر بواسطة:
#4
نحمده ونصلي على رسوله الكريم

نعم هو ذاك...
قم بانشاء فئة class واضف اليها جميع الخصائص التي تريد مع جعلها مشاركه static وعند تسجيل الدخول قم باسناد القيم من قاعدة البيانات الى هذه الخصائص حسب كل مستخدم يسجل دخوله، مثلا لو كان هناك مستخدم مسموح له الاضافه والتعديل وليس مسموح له الحذف، سنجعل الخاصيات في هذه الفئة تساوي ذلك ثم في حدث تشغيل النموذج الرئيسي نقوم باسناد هذه القيم للادوات، كمثال:

كود :
class Role
{
    internal static bool Add { get; set; }
    internal static bool Edit { get; set; }
    internal static bool Delete { get; set; }
}

نموذج تسجيل الدخول (LoginForm):

كود :
private void button1_Click(object sender, EventArgs e)
{
    Role.Add = database.Add;
    Role.Edit = database.Edit;
    Role.Delete = database.Del;
}
النموذج الرئيسي (MainForm):

كود :
private void MainForm_Load(object sender, EventArgs e)
{
    button1.Enabled = Role.Add;
    button2.Enabled = Role.Edit;
    button3.Enabled = Role.Delete;
}
الرد }}}}
تم الشكر بواسطة: info@cnr
#5
Angel
جزاك الله كل خير اخي ربيع شكر موصول لك
Big Grin
ليكن دائما هدفك من التعلم منفعة اخوانك المسلمين
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [C#.NET] نتائج البحث في فورم آخر ...؟ mera.55 4 282 25-02-16, 01:29 PM
آخر رد: mera.55
Thumbs Up [سؤال] [تم الحل] تعديل في سورس كود لمكتبة لا تدعم العربي Easy4ever 21 4,507 16-12-15, 09:21 AM
آخر رد: myalsailamy
Information [سؤال] كيف أنقل سجلات مختارة من DataGridView موجود في فورم إلى DataGridView في فورم آخر ؟ أشرف حكيم 28 1,798 12-10-15, 11:53 PM
آخر رد: أشرف حكيم
  [نقاش] كيف يمكن التغلب على مسألة تعديل بنية البرنامج ؟ عبد الله 7 447 29-09-15, 07:38 AM
آخر رد: عبد الله
  [C#.NET] تعديل البيانات في الداتاغريد فيو غير مرتبطة بداتا سورس info@cnr 0 326 05-02-15, 12:24 PM
آخر رد: info@cnr
Lightbulb [سؤال] فتح فورم عندما توصل ساعة الجهاز الى وحدة مساء ديو05 3 604 08-01-15, 02:57 AM
آخر رد: الشاكي لله
  كيف يمكنني التحكم في فورم من فورم اخر وسام1 6 1,576 09-12-14, 03:43 PM
آخر رد: وسام1
  [كود] تعديل Control.WndProc Method أسامة 6 701 11-09-14, 11:31 PM
آخر رد: vbnet
  عايز اعمل فورم في البرنامج تظهر مرة واحدة فقط عند اول مرة افتح البرنامج ولا تظهر مرة اخري السندباد المصري 11 1,849 01-07-13, 03:56 AM
آخر رد: Glamour
  سؤال حول جعل الجيك بوكس الموجود في فورم ثاني غير مؤشر من خلال بوتن موجودة في الفورم الاول خادم الصدر 2 847 25-05-13, 11:08 PM
آخر رد: خادم الصدر

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


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