关于asp.net中Repeater控件的一些应用
在Asp.net中,我是比较喜欢用Repeater这个控件,刚刚遇到的一个问题,怎么实现单击 <asp:LinkButton>,通过后台的单击事件获取同一行数据中的其他数据(对象)。
1, 刚刚百度到一个RepeaterItem类,可以用来存储当前一行对象(至少在数据库读出来的时候是同一行的)所有对象;
2, 使用方法 : 首先获取当前单击对象,使用当前单击对象的 Parent这个属性获得当前行 使用了数据绑定的对象集。实例如下:
protected void Link1_Click(object sender, EventArgs e)
{
LinkButton lbl_1 = (LinkButton)sender;
RepeaterItem item = (RepeaterItem)lbl_1.Parent;
Label lbl_txt = (Label)item.FindControl("lbl_txt");
Script.Alert(lbl_txt.Text);
}
3,注意事项 : 我觉得这个还是蛮重要的,便于自己以后查看。就是如果需要获取对象,获取的对象ID必须是后台变量,而且格式如下:
<body>
<form id="form1" runat="server">
<ucl:Ctr_Header runat="server" ID="Ctr_Header_1" />
<ul>
<asp:Repeater runat="server" ID="Repeat_List">
<ItemTemplate>
<li>
<span class="fr"><%# DataBinder.Eval(Container.DataItem, "newsDate") %></span>
<asp:LinkButton runat="server" ID="Link1" OnClick="Link1_Click" Text='<%# DataBinder.Eval( Container.DataItem, "title") %>'>
</asp:LinkButton>
<asp:Label runat="server" ID="lbl_txt" CssClass="fl" ><%# DataBinder.Eval(Container.DataItem, "oprDate") %></asp:Label>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
<ucl:Ctr_Footer runat="server" ID="Ctr_Footer_1" />
</form>
</body>
必须使绑定的数据要跟ID在同一个中括号(<>)里面,一般存在Text属性中,如果将对象放在<asp:TextBox runat="server" ID="txt"><
%# DataBinder.Eval( Container.DataItem, "title") %></asp:TextBox>中是无效的,也就是无法获取该元素的ID,无法获取该文本框。切记!!!
></asp:TextBox>
使用数据绑定时:先判断
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
protected void major_kind_DataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
LinkButton lbt_Update = (LinkButton)e.Item.FindControl("lbt_Update");
LinkButton lbt_Save = (LinkButton)e.Item.FindControl("lbt_Save");
LinkButton lbt_Del = (LinkButton)e.Item.FindControl("lbt_Del");
// txt_Num = (TextBox)e.Item.FindControl("txt_Num");
// input_Name = (TextBox)e.Item.FindControl("input_Name");
// lbt = lbt_Save; // 用来触发 文本框, // 数据更新 }
}
OK,记录完毕,继续!!!加油!!!
关于asp.net中Repeater控件的一些应用的更多相关文章
- asp.net中Repeater控件用法笔记
大家可能都对datagrid比较熟悉,但是如果在数据量大的时候,我们就得考虑使用 repeater作为我们的数据绑定控件了.Repeater控件与DataGrid (以及DataList)控件的主要区 ...
- 十三、asp.net中Repeater控件用法笔记
大家可能都对datagrid比较熟悉,但是如果在数据量大的时候,我们就得考虑使用 repeater作为我们的数据绑定控件了.Repeater控件与DataGrid (以及DataList)控件的主要区 ...
- 轻松学习Asp.net中的控件
C/S 结构,即大家熟知的客户机和服务器结构.它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销.目前大多数应用软件 ...
- [转载]ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值
原文地址:http://www.cnblogs.com/yxyht/archive/2013/03/02/2939883.html ASP.NET中TextBox控件设置ReadOnly=" ...
- asp.net关于Repeater控件中的全选,批量操作
今天在Repeater控件中碰到一个全选的操作,于是上网查了一下,找到一个觉得比较好,便记录下来, 界面代码简化之后(全选操作): <script type="text/javascr ...
- asp.net 在repeater控件中加按钮
在repeater中加入方法有两种方法: 第一种:是对repeater控件的行添加OnItemCommand事件,添加方法也是有两种 1.在设计页面中,选中repeater控件右击==>属性== ...
- Webform中Repeater控件--绑定嵌入C#代码四种方式
网页里面嵌入C#代码用的是<% %>,嵌入php代码<?php ?> 绑定数据的四种方式: 1.直接绑定 <%#Eval("Code") %> ...
- Asp.Net中ObjectDataSource控件传参绑定数据
最近在实习,在上头交付的任务中,由于需要使用Asp.Net的ListView控件,因此必然得就使用了ObjectDataSource控件,由于在使用过程中,需要网页中的参数发送到后台后,运行该参数进行 ...
- ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值
SP.NET中TextBox控件设置ReadOnly="true"H或Enabled=false后台取不到值 当TextBox设置了ReadOnly="true" ...
随机推荐
- named piped tcp proxy 下载
named piped tcp proxy 在某DN上面下载很麻烦,还要登录什么的,分享出来!希望大家支持 链接:https://pan.baidu.com/s/1fdJD6O0qb8_BkkrnMy ...
- 015.Python函数名的使用以及函数变量的操作
一 函数名的使用 python中的函数可以像变量一样,动态创建,销毁,当参数传递,作为值返回,叫第一类对象.其他语言功能有限 1.1 函数名是个特殊的变量,可以当做变量赋值 def func(): p ...
- KVM虚拟化存储管理(4)
一.KVM存储虚拟化介绍 KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的. Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种型: Vol ...
- shell基础之EOF的用法
一.EOF的用法 EOF是(END Of File)的缩写,表示自定义终止符.既然自定义,那么EOF就不是固定的,可以随意设置别名,在linux按ctrl-d 就代表EOF. EOF一般会配合cat能 ...
- php5.6 + apache2.4+mysql5.7 配置
----------------------------------------------------- ★软件工具:(下载时注意下载相应版本,不同版本安装细节可能会有差异!!) 1>http ...
- Jenkins 基础篇 - 任务创建
前面了解了 Jenkins 上各种任务的区别后,我们就来实践应用下,先创建一个[文件夹]类型的任务,将我们目前的一些基础的演示任务[移动]到文件夹里面去,这样可以先做个简单的分类. 新建一个[文件夹] ...
- 根据swagger.json生成flutter model,暂无空安全支持
一般的服务端类型都有泛型支持,对于flutter来说虽然也支持泛型,但是在序列化这里却始终存在问题,flutter不允许用反射,对于flutter项目的开发来说除了画页面,可能最烦人的就是跟服务端打交 ...
- ReentrantLock修饰类文件,实现按类获取锁的逻辑
1.ReentrantLock 给类文件加锁,实现类似synchronized(class)的功能 核心是类文件中,使用static修饰的reentrantLock对象 public class So ...
- 如何在Python中加速信号处理
如何在Python中加速信号处理 This post is the eighth installment of the series of articles on the RAPIDS ecosyst ...
- TVM Pass IR如何使用
TVM Pass IR如何使用 随着Relay / tir中优化遍数的增加,执行并手动维护其依赖关系变得很棘手.引入了一个基础结构来管理优化过程,并应用于TVM堆栈中IR的不同层. Relay / t ...