У меня есть gridview с установленным свойством alternatingRowStyle.
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource2" OnRowDataBound="GridView1_RowDataBound"
onselectedindexchanged="GridView1_SelectedIndexChanged" AlternatingRowStyle-BackColor="#f0f1f3">
Я также хочу выделить строки при перемещении курсора с помощью этого:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#ceedfc'");
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=''");
e.Row.Attributes.Add("style", "cursor:pointer;");
Проблема, с которой я столкнулся, заключается в том, что, когда мышь перемещается мимо строки, она восстанавливается белым, а не предыдущим цветом, который отличается в половине строк. Я предполагал, что смогу сохранить текущий цвет строки перед заменой его для каждого события «onmouseove», но это кажется дорогим и беспокоящим, если быстрое движение мыши может испортить ситуацию.
Я не вижу свойства для строк gridview, чтобы сказать мне, является ли это альтернативной строкой, но было бы лучше просто нечетное / четное определение для индекса строки?
Какие-нибудь лучшие предложения?
Спасибо.
* 1015 Дан *