PDA

View Full Version : دسترسی به داده های یک UserControl



jannati
سه شنبه 28 خرداد 1387, 12:28 عصر
با سلام
من یک usercontrolساختم که داخل 3 تا تکس باکس هست که از طریق یک مقدار در صفحه وبم باید پربشه و همچنین موقعی که کاربر کلید ذخیره را زد مقدار داخل تکس باکس را از داخل آن Fetchکنم.
یک کلاس getو set به شکل زیر برای یوزر کنترل نوشتم:


public int CurrentTime
{

get
{
try
{
return (Convert.ToInt32(THour.Text.Trim()));
}
catch
{
return -1;
}
}
set
{
THour.Text=value.ToString();
}
}

حالا وقتی این یوزرکنترل را در صفحه وبم اضافه میکنم و صداش میزنم در صفحه وبم شناخته نمیشه.مثلا Show1اسمش است.ولی در لیستم نمیاد.
؟؟؟؟؟؟؟؟؟؟؟

alib_1421
چهارشنبه 29 خرداد 1387, 14:47 عصر
Public Property CurrentHour() As Integer
Get
Return CInt(THour.Text.Trim)
End Get
Set(ByVal value As Integer)
THour.Text = value.ToString
End Set
End Property

کاربر عزیز شما برای کنترل خود میتوانید سه Property مانند بالا ایجاد کنید سپس بعد از قراردادن UserControl در صفحه دلخواه میتوانید از تابعهای Set,Get آن استفاده کنید.
Show1.CurrentHour مقدار داده ای را که کاربر در thour نوشته برای شما بر میگرداند

jannati
شنبه 01 تیر 1387, 09:27 صبح
با سلام
دوست عزیز ممنون از توجهتون...اما اگر بیشتر دقت میکردید میدید که مشکل من دقیقا موقع صدا زدن یوزر کنترل است.این Show1که شما نوشتید در صفحه من جواب نمیده.یعنی من دربخش دیزاین این کنترل را درگ کرده ام.رجیستر هم شده است.اما این آی دی در صفحه Behindشناخته نمیشود....منظورمو رسوندم؟

MehranZand
شنبه 01 تیر 1387, 19:22 عصر
بعد از Drag کردن کنترل در صفحه، مثلا UC شما یه نام Show هست و به شی Show1 تبدیل شده و اضافه میشه و حالا شما در Code Behind دسترسی به Show1 نداری؟

jannati
یک شنبه 02 تیر 1387, 09:09 صبح
دقیقا-مشکلم هم همین است.در CodeBehindبه آن دسترسی ندارم.

MehranZand
یک شنبه 02 تیر 1387, 10:39 صبح
من فکر میکنم که این علتش یکسری از مشکلات غیر معمول که توی پروژه ات پیش اومده، بهتره که یکبار با یک پروژه جدید UC رو تست بکنی و ببینی که نتیجه چی میشه.