加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – .NET 4.5 WebForms:我(仍然)真的必须在FormView中指

发布时间:2020-12-16 03:48:34 所属栏目:asp.Net 来源:网络整理
导读:研究ASP.NET 4.5 WebForms中新的强类型,模型绑定方法: 在Scott Hanselman’s example的WebForms模型绑定(以及其他)中,我已经看到使用在“编辑”模式下打开的FormView,其中包含许多DynamicControl,例如 asp:FormView runat="server" ID="MyForm" ... Default
研究ASP.NET 4.5 WebForms中新的强类型,模型绑定方法:

在Scott Hanselman’s example的WebForms模型绑定(以及其他)中,我已经看到使用在“编辑”模式下打开的FormView,其中包含许多DynamicControl,例如

<asp:FormView runat="server" ID="MyForm" ... DefaultMode="Edit">
  <EditItemTemplate>
    <asp:DynamicControl runat="server" ID="Field1" DataField="Field1" Mode="Edit" />
    <asp:DynamicControl runat="server" ID="Field2" DataField="Field2" Mode="Edit" />
  </EditItemTemplate>
</asp:FormView>

在我的情况下,我的FormView的ItemTemplate,EditItemTemplate和InsertItemTemplate将是相同的,除了ItemTemplate的控件将处于“ReadOnly”模式.

我(仍)确实需要在FormView中提供三个几乎完全相同的模板副本吗?

我很高兴使用DynamicControls,但是这里的团队永远不会采用FormView所需的“3x复制粘贴”方法,特别是对于我们的大型模板.

我原以为可能:

> DynamicControls可以从包含FormView获取“模式”吗?
>我可以使用FormView以外的东西来包含我的DynamicControls?
>我应该在代码隐藏中管理DynamicControls模式以避免模板重复吗?

任何例子/想法?

解决方法

不,您不必指定所有3个模板.我有相同的场景,这是我的解决方案:

>将默认模式设置为最常用的模式
>然后在表单后面的代码中管理表单模式
>在代码后面复制模板,例如EditTemplate你手动编码到你需要的另一个

protected void Page_Init()
{
    var action = RouteData.Values["action"].ToString();

    switch (action)
    {
        case "add":
            personForm.ChangeMode(FormViewMode.Insert);
            this.Page.Title += " Add";
            break;
        case "edit":
            personForm.ChangeMode(FormViewMode.Edit);
            this.Page.Title += " Change";
            break;
        default:
            personForm.ChangeMode(FormViewMode.ReadOnly);
            break;
    }

    // Reuse inserttemplate for editing
    if (personForm.CurrentMode == FormViewMode.Edit)
    {
        personForm.EditItemTemplate = personForm.InsertItemTemplate;
    }

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读