在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控件的一些应用的更多相关文章

  1. asp.net中Repeater控件用法笔记

    大家可能都对datagrid比较熟悉,但是如果在数据量大的时候,我们就得考虑使用 repeater作为我们的数据绑定控件了.Repeater控件与DataGrid (以及DataList)控件的主要区 ...

  2. 十三、asp.net中Repeater控件用法笔记

    大家可能都对datagrid比较熟悉,但是如果在数据量大的时候,我们就得考虑使用 repeater作为我们的数据绑定控件了.Repeater控件与DataGrid (以及DataList)控件的主要区 ...

  3. 轻松学习Asp.net中的控件

    C/S 结构,即大家熟知的客户机和服务器结构.它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销.目前大多数应用软件 ...

  4. [转载]ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值

    原文地址:http://www.cnblogs.com/yxyht/archive/2013/03/02/2939883.html ASP.NET中TextBox控件设置ReadOnly=" ...

  5. asp.net关于Repeater控件中的全选,批量操作

    今天在Repeater控件中碰到一个全选的操作,于是上网查了一下,找到一个觉得比较好,便记录下来, 界面代码简化之后(全选操作): <script type="text/javascr ...

  6. asp.net 在repeater控件中加按钮

    在repeater中加入方法有两种方法: 第一种:是对repeater控件的行添加OnItemCommand事件,添加方法也是有两种 1.在设计页面中,选中repeater控件右击==>属性== ...

  7. Webform中Repeater控件--绑定嵌入C#代码四种方式

    网页里面嵌入C#代码用的是<% %>,嵌入php代码<?php ?> 绑定数据的四种方式: 1.直接绑定 <%#Eval("Code") %> ...

  8. Asp.Net中ObjectDataSource控件传参绑定数据

    最近在实习,在上头交付的任务中,由于需要使用Asp.Net的ListView控件,因此必然得就使用了ObjectDataSource控件,由于在使用过程中,需要网页中的参数发送到后台后,运行该参数进行 ...

  9. ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值

    SP.NET中TextBox控件设置ReadOnly="true"H或Enabled=false后台取不到值 当TextBox设置了ReadOnly="true" ...

随机推荐

  1. [Linux]常用命令、组合命令以及输入输出重定向

    [Linux]常用命令.组合命令以及输入输出重定向 2020-03-10阅读 1580   原创文章 文章目录 0.切换目录 1.复制文件和目录`cp` 1.1.复制文件 1.2.复制目录 1.3.扩 ...

  2. 【转载】让KVM虚机能使用音箱与麦克风(vnc及ac97)

    让KVM虚机能使用音箱与麦克风(vnc及ac97) 原 tantexian 发布于 2016/02/29 16:32 字数 462 阅读 164 收藏 0 点赞 1 评论 0 为什么80%的码农都做不 ...

  3. .jnlp 文件打开方式

    .jnlp 文件打开方式 jnlp文件打开需要安装jre ,java环境,通过java环境运行即可,下面介绍详细步骤 1.下载.安装最新版jre环境,直接下一步即可 2 java配置 打开控制面板,查 ...

  4. ltp日志

    grep "fail" -i /var/log/messages |wc -lgrep "fail" -i /var/log/messagesgrep &quo ...

  5. 什么是环境变量,Linux环境变量及作用 echo

    什么是环境变量,Linux环境变量及作用 < Linux命令的执行过程是怎样的?(新手必读)Linux PATH环境变量是什么,有什么用?(入门必读) > <Linux就该这么学&g ...

  6. -bash: $'\201ccd': δ 的错误是linux编码问题(Centos7)

    如果目录是中文目录,你的编码为: [root@dbbd-api01 ~]# cat /etc/locale.conf LANG=zh_CN.GB18030 [root@dbbd-api01 ~]# 那 ...

  7. web技术开发桌面应用

    三款前端工程师桌面应用开发神器! http://mini.eastday.com/a/160630023107669-2.html 如果我告诉你,以后你们可以用前端语言(html5+css3+js)开 ...

  8. Nginx|Apache目录权限禁止执行PHP设置

    Ngnix: location ~ /upload/.*.(php|php5)?$ { deny all; } 这就是禁止upload内执行php,但是图片可以打开哦 多目录禁止: location ...

  9. nginx 的基础知识(二)

    Nginx 多进程网络模型 进程模型 nginx启动后以daemon的方式在后台运行,后台进程包括一个master进程和多个worker进程 master进程主要作用,接收来自外界的信号:向各work ...

  10. 也谈如何写一个Webserver(三)

    在上一篇里,我介绍了如何应用socket和epoll来组织和管理从客户端(如,浏览器)传入的连接,通过设置非阻塞连接让Webserver有更好的性能. 下面,我介绍一下在我写的Webserver Ma ...