2
我有一個gridview報頭內顯示上的web部件數據,具有了LinkButton以允許由不同的字段分選(與將在爲每列不同的自定義排序方法)的GridView頭的LinkButton不更新
按鈕作品很好,但在點擊處理程序中,它會更改文本,命令名稱和字體。
這從來沒有工作(即沒有更改發生在按鈕上),是否有任何理由它不應該工作?
的GridView ASCX:
<asp:GridView ID="GridView1" runat="server" Width="100%" AutoGenerateColumns="false"
AllowSorting="False">
<HeaderStyle />
<RowStyle />
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<table>
<tr>
<td>
<a>Name</a>
<asp:LinkButton ID="btnNameSort" runat="server" Text="Sort Ascending" OnClick="btnNameSort_Click" CommandName="asc" />
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
... Item code
</ItemTemplate>
這是後面的代碼:我想在GridView正在重新呈現
public void btnNameSort_Click(object sender, EventArgs e)
{
LinkButton btn = (LinkButton)GridView1.HeaderRow.FindControl("btnNameSort");
if (btn.CommandName == "asc")
{
btn.Text = "Sort Descending";
btn.Font.Bold = true;
btn.CommandName = "desc";
updateGridView1(true, "title");
}
else
{
btn.Text = "Sort Ascending";
updateGridView1(false, "title");
}
這工作對我來說,我添加了參數到視圖狀態(即文本,命令和粗體),然後在Gridview1_DataBound方法讀取這些關閉,謝謝你的幫助 – Nymain
@Nymain - 我的榮幸,你能標記我的答案一個正確的:) –