我有一个中继器,在其中我将一些用户控件与面板绑定。面板有一个OnClick
事件并引发一个ItemCommand
. 我知道它DataItem
不会在整个回发过程中持续存在,因此在事件期间它将为空ItemCommand
,我的要求是在单击特定用户控件时更改它的颜色(不使用 Javascript)。有人有想法吗?
问问题
381 次
1 回答
0
您可以尝试在 itemDataBound 事件中更改特定用户控件 onClick 的类名,如下所示
protected void DataList1_ItemDataBound(object sender,
DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem)
{
//Add eventhandlers for highlighting
//a DataListItem when the mouse hovers over it.
e.Item.Attributes.Add("onmouseover",
"this.oldClass = this.className;" +
" this.className = 'EntryLineHover'");
e.Item.Attributes.Add("onmouseout",
"this.className = this.oldClass;");
//Add eventhandler for simulating
//a click on the 'SelectButton'
e.Item.Attributes.Add("onclick",
this.Page.ClientScript.GetPostBackEventReference(
e.Item.Controls[1], string.Empty));
}
}
于 2012-11-27T05:02:10.347 回答