المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : كيف تجعل الـ User control ذات خلفية شفافة


khaledbelal
10-28-2010, 02:50 PM
كنت أقوم بعمل user control خاصه
و واجهتني مشكلة بسيطه .. هي جعل الـ user control ذات خالفية شفافه تماماً
وذلك لأجعل الأداة التي أصنعها (user control) تتأقلم مع جميع أشكال وألوان الفورم
وبعد البحث المطول في موقع الـ MSDN بموقع مايكروسوفت وجد الحل التالي شرحه
لقد وضعت لكم هذا الشرح... لكي يستفيد غيري منه.......
ملاحظه هامه : هذا الحل التالي شرحه .. يقوم بجعل الـ user control
ذات خلفية شفافه من دون أن يعتمد على لون خلفية الفورم الذي سوف تضع فيه أداتك (user control) التي تصتعها .. إنما تجعل أداتك شفافه .... شفافه
الآن شرح الخطوات :

الخطوه الأولى :


protected override CreateParams CreateParams

{

get
{
CreateParams cp = ****.CreateParams;
cp.ExStyle |= 0x00000020;
return cp;
}
}
**** = بدرون مسافات b a s e
الخطوه الثانية :

protected override void OnPaintBackground(PaintEventArgs e)

{

// لا تكتب شيء هنا .. اتركها فارغه

}

الخطوه الثالثة :

protected void InvalidateEx()

{

if(Parent==null)

return;

Rectangle rc=new Rectangle(this.********,this.Size);
Parent.Invalidate(rc,true);
}

******** = بدون مسافات L oc ati on

الخطوه الأخيره : قم وضع اداتك التي صنعتها ...على أي فورم ... سوف تلاحظ أن اداتك أصبحت شفافه
وتأقلمت مع شكل الفورم ....
وفي النهاية أخواني الكرام ...فأتمنى أن لا تنسوني بادعاء


منقول

ماريا إسلام
11-04-2010, 09:25 PM
وعليكم السلام ورحمة الله وبركااته

جزااكم إلهي خير الجزااااء

وبارك الله في مجهودكم

بالتوفيق،،

//

zeneden33
09-28-2011, 07:33 AM
السسلام عليكم ورحمة الله
اين اضع هذه الاكواد يرحمك الله

khaledbelal
09-28-2011, 07:40 AM
السسلام عليكم ورحمة الله
اين اضع هذه الاكواد يرحمك الله

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

ضعها اخي داخل هذا الكلاس

public partial class UserControl1 : UserControl
{

}