原文:http://www.cnblogs.com/insus/archive/2012/09/22/2697862.html

下面是Insus.NET实现演示:

CObj.cs代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; /// <summary>
/// Summary description for CObj
/// </summary>
namespace Insus.NET
{
    public class CObj
    {
        private int _Nbr;
        private int _Val;
                         public int Nbr
        {
            get { return _Nbr; }
            set { _Nbr = value; }
        }         public int Val
        {
            get { return _Val; }
            set { _Val = value; }
        }
        public CObj()
        {
            //
            // TODO: Add constructor logic here
            //
        }
    }
}

GridView代码:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" Width="230px" OnRowCreated ="GridView1_RowCreated">
                <Columns>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            key
                        </HeaderTemplate>
                        <ItemTemplate>
                            <%# Eval("Nbr") %>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            Value
                        </HeaderTemplate>
                        <ItemTemplate>
                            <asp:Label ID="LabelVal" runat="server" Text='<%# Eval("Val") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField>
                        <HeaderTemplate>
                            operator
                        </HeaderTemplate>
                        <ItemTemplate>
                            <asp:Button ID="ButtonAdd" runat="server" Text="+" />&nbsp;&nbsp;
                            <asp:Button ID="ButtonSubtract" runat="server" Text="-" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>

引用  using Insus.NET;

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Data_Binding();
        }
    }

private void Data_Binding()
    {
        List<CObj> MyObj = new List<CObj>();

CObj o = new CObj();
        o.Nbr = 1;
        o.Val = 100;
        MyObj.Add(o);

this.GridView1.DataSource = MyObj;
        this.GridView1.DataBind();
    }

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType != DataControlRowType.DataRow) return;

if (e.Row.FindControl("ButtonAdd") != null)
        {
            var ButtonAdd = e.Row.FindControl("ButtonAdd") as Button;
            ButtonAdd.Click += ButtonAdd_Click;
        }

if (e.Row.FindControl("ButtonSubtract") != null)
        {
            var ButtonSubtract = e.Row.FindControl("ButtonSubtract") as Button;
            ButtonSubtract.Click += ButtonSubtract_Click;
        }
    }

private void ButtonAdd_Click(object sender, EventArgs e)
    {
        var button = sender as Button;
        GridViewRow gvr = (GridViewRow)button.Parent.Parent;
        var Label = (Label)this.GridView1.Rows[gvr.RowIndex].FindControl("LabelVal");
        int v = Convert.ToInt32(Label.Text);
        Label.Text = (v + 1).ToString();
    }

private void ButtonSubtract_Click(object sender, EventArgs e)
    {
        var button = sender as Button;
        GridViewRow gvr = (GridViewRow)button.Parent.Parent;
        var Label = (Label)this.GridView1.Rows[gvr.RowIndex].FindControl("LabelVal");
        int v = Convert.ToInt32(Label.Text);
        Label.Text = (v - 1).ToString();
    }

xxx.aspx.cs代码:

于 11:46分,Insus.NET添加二笔记录,分别测试每一行效果:

GridView做加的更多相关文章

  1. ScrollView嵌套ListView,GridView数据加载不全问题的解决

    我们大家都知道ListView,GridView加载数据项,如果数据项过多时,就会显示滚动条.ScrollView组件里面只能包含一个组件,当ScrollView里面嵌套listView,GridVi ...

  2. freemarker 数据做加减计算

    controller的部分: @Controller@RequestMapping("/ContactsFrameIndex")public class ContactsFrame ...

  3. LruCache为GridView异步加载大量网络图片

    MainActivity如下: import android.os.Bundle; import android.widget.GridView; import android.app.Activit ...

  4. 利用LruCache为GridView异步加载大量网络图片完整示例

    MainActivity如下: package cc.testlrucache; import android.os.Bundle; import android.widget.GridView; i ...

  5. Android GridView异步加载图片和加载大量图片时出现Out Of Memory问题

    我们在使用GridView或者ListView时,通常会遇到两个棘手的问题: 1.每个Item获取的数据所用的时间太长会导致程序长时间黑屏,更甚会导致程序ANR,也就是Application No R ...

  6. 浅谈DevExpress<三>:在GridView中加载动态图片

    今天的演示效果如下:在GridView中的下拉框中选中一种颜色,则后面的加载相应的图片,如下图: 1.

  7. Android GridView 分页加载数据

    android UI 往右滑动,滑动到最后一页就自动加载数据并显示 如图: package cn.anycall.ju; import java.util.ArrayList; import java ...

  8. ListView与GridView异步加载图片

    原理很简单,主要是用到了回调方法,下面是异步加载图片的类 <span style="font-size:16px;">package com.xxx.xxx; impo ...

  9. 各种加载效果,适合做加载loading动画效果 Eclipse版

    Animation.rar 链接: http://pan.baidu.com/s/1c0QkOz2 密码: kd57

随机推荐

  1. 为什么C++中只有指针和引用才能实现多态?

    代码: class A { public: virtual void Debug(){} }; class B:public A { public: virtual void Debug(){} }; ...

  2. [机器学习]Fine Tune

    Fine Tune顾名思义,就是微调.在机器学习中,一般用在迁移学习中,通过控制一些layer调节一些layer来达到迁移学习的目的.这样可以利用已有的参数,稍微变化一些,以适应新的学习任务.所以说, ...

  3. Halcon链接库

    halcon.libhalconc.libhalconcpp.libhalconcppxl.libhalconcxl.libhalconx.libhalconxl.libhalconxxl.libhd ...

  4. CVE-2019-0708

    本机IP 192.168.1.100 靶机IP 1:windows2003sever  :192.168.1.101 确认3389端口开启 0x01测试windowsxp 切到目录 目标机器确实存在 ...

  5. 一款基于jQuery的分页插件

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  6. gitblit 数据迁移(复制)

    gitblit 数据迁移 完全拷贝方式: 将原服务器上的gitblit的安装目录.数据目录等相关目录拷到另一台服务器上即可,这样启动方式和使用端口及数据和原服务上的一模一样.(因为gitblit是不用 ...

  7. JavaScript 事件不触发

    在class上绑定的事件,点击图片的时候无法触发 <div id="files" class="files"> <div> <p& ...

  8. LinkedList Stack

  9. linux中 > 、>> 的用法

    linux中>表示覆盖原文件内容(文件的日期也会自动更新),>>表示追加内容(会另起一行,文件的日期也会自动更新). 1 将history命令执行的结果保存到history.log文 ...

  10. KVM 记录

    mkdir -p /home/hugepagesmount -t hugetlbfs hugetlbfs /home/hugepages 配置文件 vim /etc/libvirt/qemu.conf ...