博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
8.行命令按钮
阅读量:6500 次
发布时间:2019-06-24

本文共 3399 字,大约阅读时间需要 11 分钟。

  • ListView的行按钮和Repeater一样,不同的是取当前行数据的方式,int index=((ListViewDataItem)e.Item).DisplayIndex取出操作行的行号,ListView1.DataKeys[index].Value取出主键的值,如果对数据进行了操作,最后要对ListView执行DataBind刷新数据,由ListView的DataKeynames属性决定存储哪些字段值为主键,可以多个主键(和数据库主键没有直接关系),所有有Values.
  • 排序:将LayoutTemplate中的表头用<asp:LinkButton runat="server" CommandName="Sort" Text="Id" CommandArgument="Id" />代替,其中CommandArgument的值为排序字段。只要是CommandName、CommandArgument对就可以了,展现成什么,显示在哪都可以。

实例:

   有个数据表有三个字段:id(自增),name(用户名).age(年龄).用listview显示这些数据,并在listview中放一个按钮,每当点击一下这个按钮,这个记录的年龄就会增加一岁。因为我们可以在浏览状态下给其增加一岁,所有把这个行按钮放在itemTemplate中。也放入一按钮用于排序,如下源码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="行命令设置.WebForm1" %>        
未返回数据。
 
id name age

在listview 的itemCommand中写入以下事件:

protected void ListView1_ItemCommand(object sender, ListViewCommandEventArgs e)        {            if (e.CommandName == "IncAge")            {                int i = ((ListViewDataItem)e.Item).DisplayIndex;               // int id =(int)ListView1.DataKeys[i].Value;                int id = (int)ListView1.DataKeys[i].Values["id"];                T_UserTableAdapter adapter = new T_UserTableAdapter();                adapter.IncAgeById(id);                ListView1.DataBind();                          }        }

 

转载于:https://www.cnblogs.com/yagzh2000/p/3169440.html

你可能感兴趣的文章
我的友情链接
查看>>
Java 使用 Redis
查看>>
JPA常用注解
查看>>
Java基础学习总结(1)——equals方法
查看>>
Maven学习总结(6)——Maven与Eclipse整合
查看>>
HTML5:理解head
查看>>
oracle
查看>>
java SpringUtil获取bean
查看>>
Centos6.4最小化安装系统初始化脚本
查看>>
PaaS变厚了
查看>>
赛门铁克开启“容灾即服务”时代
查看>>
复杂度归纳--小结
查看>>
基础篇9-python基本数据结构-列表
查看>>
PHP学习笔记 第八讲 Mysql.简介和创建新的数据库
查看>>
【git】git入门之把自己的项目上传到github
查看>>
js获取鼠标位置
查看>>
2016.8.11 DataTable合并及排除重复方法
查看>>
php 魔术方法 说明
查看>>
Mysql
查看>>
POJ-1860-Currency Exchange
查看>>