У меня есть просмотр списка внутри панели обновлений, но я не могу заставить его правильно обновлять - у каждого элемента есть кнопка, которая удаляет ее из списка - что она делает, но требуется два нажатия кнопок, чтобы увидеть, как элемент исчезает со страницы.Кнопка обновления панели необходимо дважды нажать, чтобы обновить
Здесь разметка:
<asp:ScriptManager ID="DashScriptManager" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="ToDoUpdate" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:ListView ID="ToDo" runat="server">
<ItemTemplate>
<li style="" class="<%# Eval("ToDoPriority")%>">
<%# Eval("ToDoText")%>
<div class="agile-detail">
<asp:LinkButton ID="ToDoComplete" runat="server" CssClass="pull-right btn btn-xs btn-primary" Text="Done" OnClick="ToDoComplete_Click"></asp:LinkButton>
<i class="fa fa-clock-o"></i> <%# Eval("ToDoDate")%>
</div>
</li>
<asp:HiddenField ID="HiddenToDoID" runat="server" Value='<%# Eval("ToDoId") %>' />
</ItemTemplate>
</asp:ListView>
</ContentTemplate>
</asp:UpdatePanel>
И Кодекс За:
protected void ToDoComplete_Click(Object sender, EventArgs e)
{
LinkButton ToDoComplete = sender as LinkButton;
HiddenField todo = ToDoComplete.NamingContainer.FindControl("HiddenToDoID") as HiddenField;
int TodDoId = Convert.ToInt32(todo.Value);
DashboardController.UpdateToDo(TodDoId);
GetToDoItems(1);
ToDoUpdate.Update();
}
Есть ли способ сделать это путем однократного нажатия на кнопку?
Когда вы нажимаете кнопку в первый раз, действительно ли вызван обработчик события Click? Если нет, возможно, это проблема с Focus. Другой элемент управления может принадлежать мыши, поэтому вам нужно щелкнуть в другом месте, чтобы отпустить его, а затем еще один щелчок, чтобы нажать кнопку. – BlackBox