1

我有一些在 DataBound 事件上触发的 FormView 代码。不幸的是(无论如何,对于我正在做的事情)无论是第一次渲染页面还是我只是单击编辑,它都会触发相同的事件。如果它ItemTemplateEditItemTemplate. 到目前为止,我对该主题的搜索没有结果。有没有一种简单的方法来做一些事情if(IsEditItemTemplate)

4

2 回答 2

2

FormView.CurrentMode是你的朋友

更多解释在这里


从引用的网站:

模式说明
FormViewMode.Edit FormView 控件处于编辑模式,允许
                       用户更新记录的值。
FormViewMode.Insert FormView 控件处于插入模式,允许
                       用户将新记录添加到数据源。
FormViewMode.ReadOnly FormView 控件处于只读模式,即
                       正常显示模式。

示例代码

void EmployeeFormView_OnPageIndexChanging(Object sender, FormViewPageEventArgs e)
{
    // Cancel the paging operation if the user attempts to navigate 
    // to another record while the FormView control is in edit mode. 
    if (EmployeeFormView.CurrentMode == FormViewMode.Edit)
    {
        e.Cancel = true;
        MessageLabel.Text = 
          "Please complete the update before navigating to another record.";
    }
}
于 2013-02-06T21:58:27.843 回答
0

更好地使用正确的功能:

 Private Sub EmployeeFormView_ModeChanged(sender As Object, e As EventArgs)
 Handles EmployeeFormView.ModeChanged
于 2015-06-18T14:44:40.510 回答