2011-01-27 28 views
2

ユーザーがグリッドビューから編集をクリックしたときにその行を強調表示したいのですが、ここでは何もしていませんが効果はありません。他に何が足りないの?選択した行を強調表示する

.SelectedRowStyle 
{ 
    background-color: Yellow; 
} 

<asp:GridView runat="server" CssClass="DataWebControlStyle"> 
    <AlternatingRowStyle CssClass="AlternatingRowStyle" /> 
    <RowStyle CssClass="RowStyle" /> 
    <HeaderStyle CssClass="HeaderStyle" /> 
    <SelectedRowStyle CssClass="SelectedRowStyle" /> 
</asp:GridView> 

答えて

1

は私ができるよう修正する方法です:

if ((e.Row.RowType == DataControlRowType.DataRow & ((e.Row.RowState & DataControlRowState.Edit) == DataControlRowState.Edit))) { 
     e.Row.BackColor = Drawing.Color.Yellow; 
    } 
+0

あなたはRowCommandイベント内でこのコードを追加しましたか? –

+0

リック、遅刻して申し訳ありませんが、私が追加した場所を正確に覚えていません。 –

1

EditRowStyleを試しましたか?ここ

.EditRowStyle 
{ 
    background-color: Yellow; 
} 

<asp:GridView runat="server" CssClass="DataWebControlStyle"> 
    <AlternatingRowStyle CssClass="AlternatingRowStyle" /> 
    <RowStyle CssClass="RowStyle" /> 
    <HeaderStyle CssClass="HeaderStyle" /> 
    <EditRowStyle CssClass="EditRowStyle" /> 
</asp:GridView> 
+0

私はちょうどeditrowstyleと試みたが、ハイライト表示されません。行は、ポストバックのためにある可能性がありますか? –

+0

おそらく 'CssClass'はCSSクラスに関連していません –

1

EditRowStyleクラスが<tr>ない<td>に適用されます。したがって、.SelectedRowStyle tdを実行した場合は、CSSが正しく適用されます。

これは私が使用するものです。

<EditRowStyle CssClass="selectedRowStyle" /> 

次にCSS

.selectedRowStyle td 
{ 
    background-color: green; 
} 
-1

は、コードの助けあなたのこの線であってもよい:

.DataWebControlStyle tr:hover 
{ 
    background-color: Yellow; 
} 

<asp:GridView runat="server" CssClass="DataWebControlStyle"> 
    <AlternatingRowStyle CssClass="AlternatingRowStyle" /> 
    <RowStyle CssClass="RowStyle" /> 
    <HeaderStyle CssClass="HeaderStyle" /> 
</asp:GridView> 
関連する問題