c# – 从codebehind获取edititemtemplate的值
发布时间:2020-12-15 21:45:32 所属栏目:百科 来源:网络整理
导读:我有一个详细信息视图,我从会员资料中获取了几个数据,并在详细信息视图中显示…这样可以正常工作: ItemTemplate asp:label ID="FirstName" runat="server" / /ItemTemplate 但是当我点击编辑按钮时,该字段上没有任何内容.这就是我在编辑模板上所做的事情:
我有一个详细信息视图,我从会员资料中获取了几个数据,并在详细信息视图中显示…这样可以正常工作:
<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”(通常是文本框)的原因是该字段必须是只读的. 解决方法
进入编辑模式时,不会触发事件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事件. 备注:根据数据绑定模式,它可能会受到影响.如果是这样,请告诉我并举个例子. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- [Swift]LeetCode436. 寻找右区间 | Find Right I
- ruby-on-rails – 在config / locales中自动重新
- React Native封装Android原生UI和Android原生模块
- 关于cocos2dx ios 内支付 出现iOSProductByIdent
- SQLite 语法(http://www.w3cschool.cc/sqlite/sq
- 当使用无符号整数时,循环条件停止在0?
- C++时间复杂度为O(n)随机生成不重复的数代码
- c# – 从Windows服务启动Windows应用程序
- Fastjson 实体类JSON化过滤字段操作-PropertyFil
- 常见的正则表达式验证
热点阅读