PDA

View Full Version : یک سوال در مورد Add Attribute و this



white fox
سه شنبه 20 دی 1384, 04:51 صبح
سلام دوستان به کد زیر دقت کنید:


Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound
Dim img As ImageButton = CType(e.Item.FindControl("ImageButton1"), ImageButton)
e.Item.Attributes.Add("onmouseover", "this.style.backgroundColor='#f3f2f0'")
img.Attributes.Add("onmouseover", "this.style.filter='flipv;width: 60px'")
End Sub


خوب در هر کدوم از اینها this دقیقا چیرو بر میگردونه؟
و آیا راهی داره که این دو تا رو با هم ادقام کنیم یعنی با اجرا اولی که در واقع رفتن موس روی آیتم های دیتاگرید فیلتر عکس هم همونطوری که میخوایم اجرا بشه یعنی لازم نباشه بریم روی خود عکس...
میدونید من خیلی تلاش کردم که به آیتم های داخل دیتاگریدم مثل همین image button دسترسی پیدا کنم اما نمیدونم چرا نمیشه؟...
البته میدونم که دیتاگرید به هر آیتمش یه عددی میده اما بازم نتونستم اون چیزی که میخوام رو اجرا کنم.

با تشکر پیشاپیش

Farhad.B.S
سه شنبه 20 دی 1384, 09:20 صبح
اولی به یک tr که در واقع سلول grid رو تشکیل میده و دومی هم به تصویری که در سلول قرار داره اشاره میکنه.

برای ادغام هر دو هم میتونی از کد زیر استفاده کنی :



e.Item.Attributes.Add("onmouseover", "this.style.backgroundColor='#f3f2f0' ; " & img.ClientID & ".style.filter='flipv;width: 60px'")

white fox
چهارشنبه 21 دی 1384, 05:42 صبح
ممنونم دوست عزیز از راهنمائیت....
اما وقتی کد شما رو اجرا میکنم ازم ایراد میگیرهبه این صورت که وقتی این کد تبدیل میشه اگر اشتباه نکنم تبدیل به کد جاوا اسکریپت میشه و یه پیغام از کد جاوا اسکریپتم میگیره و یه alert میده که Datagrid1__ctl2_ImageButton1 is undefind ...!!!!
من خودم خیلی دستکاری کردم نمیدونم چرا undefind میده چون وقتی صفحه لود میشه source صفحه رو از IE میگیرم میبینم که ID="Datagrid1__ctl2_ImageButton1" وName="Datagrid1:_ctl2:ImageBUtton1" رو مینیویسه یعنی اینکه وقتی این server control من تبدیل میشه با اینا شناخته میشه اما بازم undefind میده!!!!
من این imagebutton رو در یک <TD> که خود این TD مسلما در یک Table هست و این Table خودش در یک TemplateCulom این Datagrid قرار داره...
میتونید منو راهنمایی بیشتری کنید؟

Farhad.B.S
چهارشنبه 21 دی 1384, 19:56 عصر
اگه تو سورس خروجی html کنترل مورد نظر وجود داره نباید مشکلی باشه.
اگه مشکل حل نشد میتونید صفحه ای که دارای مشکل هست رو اینجا پیوست کنید تا بررسی شه.