PDA

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



myazdani
چهارشنبه 15 آذر 1391, 16:02 عصر
سلام

منوی برنامه ام رو به صورت پویا و با اتصال به بانک ایجاد کردم . ایتم های منو که به صورت لیبل هستند در هنگام فراخوانی از بانک id بهشون اختصاص داده میشه . حالا موقعی روشون کلیک میشه می خوام id شون رو به دست بیارم. اینکار چه جوری امکان پذیره با توجه به اینکه آیتمهای منو در زمان طراحی وجود ندارند و در زمان اجرا به وجود می آیند؟؟

myazdani
چهارشنبه 15 آذر 1391, 17:33 عصر
سوالمو یه شکل دیگه مطرح کنم:
چه جوری به رویداد ها و یا مشخصه کنترلهایی که در زمان اجرا ایجاد شده اند دسترسی داشته باشیم؟؟

myazdani
چهارشنبه 15 آذر 1391, 19:16 عصر
دوستان خواهشا اگه کسی اطلاعاتی در این زمینه داره کمک کنه. کارم بدجور گیر این موضوع هست. تا اینو ندونم کارم پیش نمیره.

تو یکی از سایتها همچین چیزی نوشته بود


public MyCustomControl() { myButton = new Button(); myButton.ID = "btnTest"; myButton.Click += new EventHandler(btnTest_Click); } protected void btnTest_Click(object sender, EventArgs e) { //do something... }


یعنی موقع اضافه کردن کنترل یه event handler هم اضافه کنیم

منتها نمی دونم event handler رو کجا باید بنویسیم وقتی هنوز کنترلی وجود نداره؟؟

البته مشکل من با دونستن id کنترل پویایی که زمان اجرا تولید شده زمانی که روش کلیک میشه حل میشه؟؟

fakhravari
چهارشنبه 15 آذر 1391, 21:40 عصر
Button b = (Button)sender;

ali9698
چهارشنبه 15 آذر 1391, 22:29 عصر
دوست عزیز من در مورد مشکل شما که توی منو هست اطلاعات چندانی ندارم
اما توی gridview همین مشکل رو داشتم که یه image توی templatefield داشتم و در هنگام اجرا بهش نیاز داشتم.
اینجوری مشکلم حل شد.

Image img1 = (Image)GridView1.Rows[1].Cells[2].Controls[1];