PDA

View Full Version : بدست اوردن نام تمام اشیا



BestLover
یک شنبه 28 بهمن 1386, 14:52 عصر
سلام

خسته نباشید.
می خوام نام تمام اشیا را در vb.net بدست بیاورم. حتی انهایی که در یک کنترل tabstrip یا groupbox هستند. اما در هتگام اجرا متوجه شدم نمی توان نام بعضی از اشیا را بدست اورد
اگه کسی کدی در این زمینه داره لطفا به من کمک کنه.

متشکرم

BestLover
سه شنبه 30 بهمن 1386, 14:44 عصر
سلام
کس نبود؟؟؟؟؟؟؟؟؟
لطفا کمک کنید

مرسی

BestLover
چهارشنبه 01 اسفند 1386, 23:14 عصر
سلام

من تلاش کردم ، اما نتونستم.
لطفا شما کمک کنید

ghafoori
پنج شنبه 02 اسفند 1386, 11:03 صبح
دوست عزیز شما می توانید از تابع بازگشتی استفاده کنید


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
get_object(Me.Controls)
End Sub

Sub get_object(ByVal ctrl_arr As ControlCollection)
For Each ctrl As Control In ctrl_arr
'do somthing
If ctrl.Controls.Count > 0 Then
get_object(ctrl.Controls)
End If
Next
End Sub

BestLover
شنبه 04 اسفند 1386, 01:05 صبح
سلام
دست شما درد نکنه
اما اگه من در فرم یک groupBox قرار بدم و در داخل اون هم یک button قرار بدم ، اونوقت برنامه error می ده.

باز هم از شما متشکرم

amirsajjadi
شنبه 04 اسفند 1386, 08:37 صبح
با سلام

Sub get_object(ByVal ctrl_arr As Control)
For i AsInteger = 0 To ctrl_arr.Controls.Count - 1
get_object(ctrl_arr.Controls.Item(i))
MsgBox(ctrl_arr.Controls.Item(i).Name)
Next
EndSub
PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
get_object(Me)
EndSub

ghafoori
شنبه 04 اسفند 1386, 08:49 صبح
کد را به این صورت تغییر بده درست می شه

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
get_object(Me.Controls)
End Sub

Sub get_object(ByVal ctrl_arr As Control.ControlCollection)
For Each ctrl As Control In ctrl_arr
'do somthing
If ctrl.Controls.Count > 0 Then
get_object(ctrl.Controls)
End If
Next
End Sub

BestLover
سه شنبه 07 اسفند 1386, 00:28 صبح
سلام

از راهنمایی شما متشکرم.