【问题标题】:get value on edititemtemplate from codebehind从代码隐藏中获取 edititemtemplate 的值
【发布时间】:2012-12-28 19:00:40
【问题描述】:

我有一个详细信息视图,我从会员资料中获取了一些数据并将其显示在详细信息视图中...这很好用:

 <ItemTemplate>
                <asp:label ID="FirstName" runat="server" />
 </ItemTemplate>

但是当我单击编辑按钮时,该字段上没有显示任何内容。这就是我在编辑模板上所做的:

我这样调用 ItemUpdating:

    protected void DetailsView1_ItemUpdating(Object sender, DetailsViewUpdateEventArgs e)
    {
        //I get my memberprofle here
        MemberProfile memberp = MemberProfile.GetuserProfile(data);
        MembershipUser myuser = Membership.GetUser()

        Label labelfName = DetailsView1.FindControl("FirstName") as Label;
        labelfName.Text = memberp.fName;
    }

我应该改用 Itemupdated 吗?或者当单击编辑按钮时我应该调用另一种方法来填充编辑时的名字字段?另外,我在编辑模式下将其保留为“LABEL”(通常是文本框)的原因是该字段必须是只读的。

【问题讨论】:

  • 是在编辑时触发DetailsView1_ItemUpdating 事件吗?

标签: c# label detailsview edititemtemplate


【解决方案1】:

当您进入编辑模式时,不会触发 ItemUpdating 事件。您必须使用 DataBound 事件来正确设置所需的文本值。

如有必要,您可以询问 DetailsView 的 CurrentMode 属性,以了解您是在编辑还是显示。

结果如下:

protected void DetailsView1_DataBound(object sender, EventArgs e)
{
    Label l = DetailsView1.FindControl("FirstName") as Label;
    if (DetailsView1.CurrentMode == DetailsViewMode.Edit)
    {
        //obtained from your sample
        MemberProfile memberp = MemberProfile.GetuserProfile(data);
        MembershipUser myuser = Membership.GetUser()

        l.Text = memberp.fName;
    }
    else
    { 
        l.Text = "Another text or nothing";
    }
 }

请务必在 Detailsview1 控件中定义 DataBound 事件。

备注:可能会受到数据绑定模式的影响。如果是这样,请告诉我并举个例子。

【讨论】:

    【解决方案2】:

    将 RowUpdating 和 RowEditing 事件添加到您的 gridview。

    http://www.aspdotnet-suresh.com/2011/02/how-to-inserteditupdate-and-delete-data.html

    【讨论】:

    • 嗨...谢谢..我正在使用 detailsview.... detailsview 的等价物是什么...是一样的吗?
    • 不确定,但事件不同。请参考以下链接。希望对你有帮助stackoverflow.com/questions/1992660/…
    • 是的...它已定义...我有另一个 if 语句加载 dropdowlist 并且工作正常...所以我知道它正在调用该方法
    猜你喜欢
    • 2014-04-10
    • 2013-07-16
    • 2015-11-06
    • 1970-01-01
    • 2013-06-29
    • 2013-03-15
    • 1970-01-01
    • 2014-03-12
    • 2012-11-16
    相关资源
    最近更新 更多