PDA

View Full Version : بدست آوردن نام کنترل کلیک شده



Navid Asadi
پنج شنبه 05 آذر 1388, 14:19 عصر
سلام دوستان...
من تعداد زیادی IconButton رو فرمم دارم (این کنترل رو از همین سایت گرفتم)...
هرکدوم یه نام خاص دارن...
من خاصیت کلیک همشون رو تو یا تابع نوشتم...
خوب هالا رو هر کدوم که کلیک کنی دستورات اجرا میشه...
چطور میتونم نام کنترلی رو که کلیک شده تو یه تکست باکس نمایش بدم؟

راستی کومپوننتش رو هم آپ کردم...

majnun
پنج شنبه 05 آذر 1388, 14:36 عصر
سلام

متونی از این استفاده کنی

sender.name=textbox1.text

یا علی

Navid Asadi
پنج شنبه 05 آذر 1388, 21:19 عصر
استفاده کردم ولی جواب نمیده(البته رو این کنترل )
اگه میشه این کنترل رو امتحان کنید...
خواهش میکنم کمکم کنید...(خیلی فوریه...)

ACorvinus
پنج شنبه 05 آذر 1388, 22:22 عصر
سلام عزیز .

ببین شما در Solution خودتون دو تا پروژه دارین، درسته ؟

من در پروژه WindowsApplication1 شما یه فرم دیدم که دو تا آیکون روش بود .
در حالت کدنویسی وقتی رو یکی از آیکون ها DoubleClick می کنیم تا کد مربوط به اون رو بنویسیم، رویداد Load به صورت Default برای اون در نظر گرفته میشه .

شما باید در رویداد Click اون کنترل کدهاتون رو بنویسین .

برای اینکه برای تمام آیکون ها یک کد بنویسین باید کاری کنین که کد موجود در Click آیکون 1 ( بر فرض مثال ) برای تمامی آیکون ها اجرا بشه .

اگه به تیکه کد رویداد Click آیکون 1 نگاهی بندازین اینجوری هستش:



Private Sub Icon1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Icon1.Click

End Sub



اگه توجه کنین Icon1.Click رو Bold کردم تا متوجه بشین منظورم چیه .
برای اینکه هر کدی که مابین Sub و End Sub هستش برای تمامی آیکون ها اجرا بشه باید کد رو اینجوری تغییر بدین: (با فرض اینکه 3 تا آیکون روی فرم داریم)



Private Sub Icon1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Icon1.Click, Icon2.Click, Icon3.Click

End Sub



خوب حالا با نوشتن این کد نام هر آیکون رو میتونین در Textbox داشته باشین:



Me.ControlNameTextBox.Text = DirectCast(sender, Control).Name



امیدوارم جوابتون رو گرفته باشین !!!

Navid Asadi
شنبه 07 آذر 1388, 19:28 عصر
سلام
دوست عزیز از شما واقعا ممنونم...
از کل توضیحاتی که دادید تنها بهDirectCast(sender, Control).Name نیاز داشتم...
به هر حال دستتون درد نکنه...
فقط یکمی در مورد دستور DirectCast توضیح بدین ممنون میشم...

ACorvinus
یک شنبه 08 آذر 1388, 14:48 عصر
سلام
دوست عزیز از شما واقعا ممنونم...
از کل توضیحاتی که دادید تنها بهDirectCast(sender, Control).Name نیاز داشتم...
به هر حال دستتون درد نکنه...
فقط یکمی در مورد دستور DirectCast توضیح بدین ممنون میشم...


سلام دوباره .


ببخشین که دیرتر سر میزنم به این تایپیک، اینم یه آدرس که بتونین در مورد DirectCast بیشتر بدونین.

آدرس: http://msdn.microsoft.com/en-us/library/7k6y2h6x.aspx