У меня есть сетка, отображающая данные на веб-части, с кнопками ссылок внутри заголовка, позволяющими сортировать по разным полям (с настраиваемым методом сортировки, который будет отличаться для каждого столбца)
Кнопка работает нормально, но в пределахобработчик щелчка изменяет текст, имя команды и шрифт.
Это никогда не работает (т.е. никаких изменений не происходит на кнопке), есть ли причина, по которой оно не должно работать?
GridviewASCX:
<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>
Это код:
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");
}