Я использую ImageButtons вместо LinkButtons в FormView для выдачи команд New / Edit / Delete / Cancel, но, похоже, они не влияют на FormView.
Кнопка ImageButtons вызовет обратную передачу, но режим FormView не отличается от текущего режима.
Я уверен, что кнопки ImageButton работали в один момент, но некоторое время я был занят другими страницами. Единственное, что изменилось между этим моментом - это некоторые исправления, которые я установил в Visual Studio.
Мне не удалось найти никакой информации, связанной с этой проблемой, кроме этой: http://www.codeproject.com/KB/webforms/TamingTheFormView.aspx В этой статье есть метод onclick для ImageButton, который используется для изменения режима FormView.
Это единственный способ использовать ImageButtons вместо LinkButtons в FormView?
Вот несколько фрагментов кода:
<asp:FormView ID="CourseFormView" runat="server" DataKeyNames="CourseCode"
DataSourceID="CourseSqlDataSource" ondatabound="CourseFormView_DataBound">
<ItemTemplate>
<table>...</table>
<asp:ImageButton ID="EditCourseImageButton" CssClass="image_button"
runat="server" CommandName="Edit"
ImageUrl="~/images/icons/pencil.png" />
</ItemTemplate>
</asp:FormView>
Codebehind:
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["code"] == null ||
Request.QueryString["code"] == "")
{
CourseFormView.ChangeMode(FormViewMode.Insert);
CourseCodeTitleLabel.Visible = false;
CourseTitleTitleLabel.Text = "Add a new course...";
SchedulePanel.Visible = false;
}
}
Нет другого кода для обработки кнопок. Я создал несколько пустых обработчиков событий для FormView, чтобы увидеть, что происходит - ModeChanging, ModeChanged и ItemCommand. Ни один из них не вызывался, когда я нажимал на ImageButton, но все работало нормально, если я использовал LinkButton.
Я не делаю ничего сложного - я просто хочу, чтобы FormView реагировал на основные команды ImageButton.