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

UserControl

مغلق
بدأه Ahmed H. Alawady في 12 مارس 2005 · 8 رد · 762 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

يوجد عندي أكثر من UserControl وتوجد عندي صفحة واحدة WebForm أريد عن إستدعاء هذه الصفحة أرسل لها باراميتر ثم تفتح أو تحمل بها UserControl واحد فقط من المجموعة التي عندي بالمشروع ، وهذا بديل لعمل صفحة فارغة لكل UserControl

وجزاكم الله خيرا

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#2

يجب أن تستخدم الطريقة التالية:

سأفترض أن لديك PlaceHolder اسم ph1 ضمن الصفحة:

if (Request.QueryString["p"] == "a")

{

UserControl uc = (UserControl)LoadControl("your_page.ascx");
ph1.Controls.Add(uc);
uc.Dispose();
}
#3

جزاك الله خيرا وزادك علماً

أخوك في الله :D

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#4

ممكن أسأل حضرتك سؤال تاني لو سمحت

ما ذا تعني كلمة Dispose()

وشكرا

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#5

Dispose تعني حذف الكائن uc من الذاكرة, طبعاً استخادمها هنا ليس ضروري لكن من أجل الحفاظ على مصادر الذاكرة,

#6

جزاك الله عنا خيرا :D

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#7

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

وإذا كنت أريد أن أستخرج منها أحد Property لأستخدامها في الصفحة الرئيسية

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

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#9

الكود بلغة ال VB.NET كما طلب الأخ

ph1.Controls.Add(Me.LoadControl("controlName.ascx"))

اذا كنت تتعامل مع متغيرات داخل الصفحة الرئيسية و لنفرض أنك تمرر باراميتر بقيمة Students مرة و مرة Teachers ليعرض مرة كنترول الطلبة و مرة المدرسين و عندك الكنترولز التالية

students.ascx

teachers.ascx

قم بعمل التالي :

Dim controlName As String = Request.QueryString("option").ToStrnig()
ph1.Controls.Add(Me.LoadControl(controlName & ".ascx"))

لو كنت تتعامل مع متغيرات كثيرة يمكنك استخدام ال Select Case في حال أنك تستخدم كنترولز لا تتشابه نوعا ما مع القيم الممررة.

و أتمنى أن لا يسألني أحد مرة أخرى عن ال VB.NET لاني مبرمج #C :)

بالتوفيق

You can fly while you can touch the sky

هذا الموضوع مغلق.

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