[英]ASP GridView select row by index
我有GridView
元素。 我用一些顏色突出顯示選定的行。 但是問題是當我選擇新元素時,以前選擇的元素仍會突出顯示。 這里的方法和東東
CS
protected void CompanyGV_SelectedIndexChanged(object sender, EventArgs e)
{
// CompanyGV.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF");
GridViewRow row = CompanyGV.SelectedRow;
row.BackColor = System.Drawing.ColorTranslator.FromHtml("#BCED91");
}
ASPX
<asp:GridView ForeColor="Black" Height="400px" ID="CompanyGV" ShowHeaderWhenEmpty="true" runat="server" AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="companies_id" DataSourceID="SqlDataCompanyList" OnSelectedIndexChanged="CompanyGV_SelectedIndexChanged">
<Columns>
<asp:CommandField ButtonType="Button" SelectText="Select" ShowSelectButton="True" />
<asp:BoundField HeaderText="№" DataField="companies_id" InsertVisible="False" ReadOnly="True" SortExpression="companies_id"/>
<asp:BoundField DataField="companies_name" HeaderText="Company" SortExpression="companies_name" />
</Columns>
</asp:GridView>
我想限制多個選擇,並且只想突出顯示所選元素! 有沒有為整個GridView
改變顏色的方法? 還是有辦法按索引選擇行並瀏覽行?
我試圖寫這樣的東西,但我得到stack overflow
錯誤消息
for (int i = 0; i <= CompanyGV.Rows.Count - 1; i++)
{
CompanyGV.SelectRow(i);
CompanyGV.SelectedRow.Cells[i].BackColor =System.Drawing.ColorTranslator.FromHtml("#FFFFFF");
}
我更喜歡在客戶端。 試試這個代碼
JQuery的
<script src="~/Content/jquery-ui-1.10.4.custom.js"></script>
<script type="text/javascript">
$(function() {
$('#CompanyGV tr').click(function () {
$('#<%=CompanyGV.ClientID%> tr').removeClass("selected");
$(this).addClass("selected");
});
});
</script>
CSS
.selected{
background-color:Green !important;
}
在設計視圖中,轉到網格視圖的常見任務,然后單擊“編輯列”,然后使用命令字段節點選擇“選擇列”屏幕快照:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.