PDA

View Full Version : مخفی کردن UserControl از داخل خودش



IranVB
سه شنبه 09 خرداد 1391, 15:14 عصر
با سلام خدمت دوستان

آیا راهی وجود دارد که بشود دستور مخفی کردن یک یوزرکنترل که اونو بر روی فرم قرار داده ایم از درون خودش بدهیم، مثلا یک یورزکنترل ایجاد کرده ایم و نامش هم UC هست، پس وقتی که اونو بر روی فرم قرار میدم نامیش میشود UC1، حالا برای مخفی کردنش دستور UC1.Visible=False را مینویسیم، میخواستم ببینم که آیا میشود این دستور را از درون خود یوزرکنترل بدم نه داخل فرمی که اونو داخل قرار داده ام، تا در مواقع لزوم کنترله مخفی و یا ظاهر بشه

با تشکر

IranVB
سه شنبه 09 خرداد 1391, 21:20 عصر
ممنون، ولی یوزرکنترل همچین تابعی نداره

محسن واژدی
سه شنبه 09 خرداد 1391, 21:26 عصر
سلام
برای اجرای داخلی دستور مخفی سازی user-control از دستور زیر هم میتوانیم استفاده کنیم:
Parent.Controls(Ambient.DisplayName).Visible = False

موفق باشید

arenaw
شنبه 10 تیر 1391, 13:57 عصر
Parent.Controls(Ambient.DisplayName).Visible = False

سلام
آقای واژدی کدتون Parent.Controls(Ambient.DisplayName).؟؟؟؟ وقتی که از همون کنترل توی فرم به صورت ایندکس دار استفاده میکنم کار نمیکنه (میگه مثلا کنترل US1(0) not found! )

محسن واژدی
شنبه 10 تیر 1391, 15:33 عصر
سلام علیکم
کد زیر را هم بررسی کنید:

Dim sObjNam$
sObjNam$ = Ambient.DisplayName
If InStrRev(sObjNam$, "(") = 0 Then
Parent.Controls(sObjNam$).Visible = False
Else
Parent.Controls(Left(sObjNam$, InStr(1, sObjNam$, "(") - 1))(CInt(Replace((Mid(sObjNam$, InStr(1, sObjNam$, "(") + 1)), ")", ""))).Visible = False
End If


موفق باشید

the king
شنبه 10 تیر 1391, 16:08 عصر
بی خودی پیچیده اش می کنین.

Extender.Visible = False