PDA

View Full Version : گرفتن مقدار یک پراپرتی از UserControl که به صورت دینامیکی در صفحه aspx لود شده باشه



hamedshop
چهارشنبه 19 بهمن 1390, 20:57 عصر
سلام
یک صفحه aspx دارم که داخل این صفحه یک placeHoder قرار دادم. کار این PlaceHoder نگهداری یک UserControl هست که به صورت دینامیکی در RunTime به PlaceHoder اضافه میشه.
برای اون UserControl هم یک Prpperty تعریف شده.
حال سوال اینه که چه طور می توان مقدار آن Property را از داخل صفحه aspx بدست آورد.


اود کردن UserControl در صفحه aspx :
1-------------------------------------------- تعریف یک LastLoadedControl property ------------------

private string LastLoadedControl
{
get
{
return ViewState["LastLoaded"] as string;
}
set
{
ViewState["LastLoaded"] = value;
}
}

2------------------------------------------- در Page_Load -----------------


LoadUserControl();

3------------------------------------------ متد LoadUserControl() --------------

private void LoadUserControl()
{
string controlPath = LastLoadedControl;
if (!string.IsNullOrEmpty(controlPath))
{
PlaceHolder1.Controls.Clear();
UserControl uc = (UserControl)LoadControl(controlPath);
PlaceHolder1.Controls.Add(uc);
}
}
4---------------------------------------- در رویداد کلیک یک Button جهت لود کردن یوزر کنترل ------------

string controlPath = ("آدرس یوزر کنترل اینجا");
LastLoadedControl = controlPath;
string controlPath = LastLoadedControl;
LoadUserControl();

خطا:
استفاده به این شکل خطا و اشتباه است:

(PlaceHolder1.Controls[0] as UserControl).نام پراپرتی تعریف شده برای یوزر کنترل
ممنون میشم اگه کسی بتونه کمک کنه
منتظرم:لبخندساده:

hamedshop
پنج شنبه 20 بهمن 1390, 09:23 صبح
کسی نبود بتونه مشکل رو حل کنه؟

hamedshop
جمعه 21 بهمن 1390, 23:15 عصر
پس چی شد؟ یه برنامه نویس اینجا پیدا نمیشه مشکل منو حل کنه؟؟؟ واقعا کسی نیست؟:متعجب: