原文: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. BZOJ 3786: 星系探索 ETT

    Description 物理学家小C的研究正遇到某个瓶颈. 他正在研究的是一个星系,这个星系中有n个星球,其中有一个主星球(方便起见我们默认其为1号星球),其余的所有星球均有且仅有一个依赖星球.主星球 ...

  2. codevs 5935 小球 x

    题目描述 Description 许多的小球一个一个的从一棵满二叉树上掉下来组成FBT(Full Binary Tree,满二叉树),每一时间,一个正在下降的球第一个访问的是非叶子节点.然后继续下降时 ...

  3. pandas读取大文件时memoryerror的解决办法

    再用pd.read_csv读取大文件时,如果文件太大,会出现memoryerror的问题. 解决办法一:pd.read_csv的参数中有一个chunksize参数,为其赋值后,返回一个可迭代对象Tex ...

  4. JS深度判断两个数组对象字段相同

    /** * 判断此对象是否是Object类型 * @param {Object} obj */ function isObject(obj){ return Object.prototype.toSt ...

  5. logstash搭建

    logstash就是一个具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端:与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满 ...

  6. css命名和书写规范

    前言 在项目开发中对于css名字的命名和书写老是感觉很混乱,这对于代码的可读性以及维护提出了挑战,所以在闲暇之余看了一些这方面的内容,现总结如下... 1.命名规则说明 所有的命名最好都小写 属性的值 ...

  7. iframe嵌套页面 跨域

    父级调用iframe方法: document.getElementById("iframe").contentWindow.func(data1,data2...) 子级 ifra ...

  8. idea使用 git 撤销commit 原

    填写commit的id  就可以取消这一次的commit

  9. mysql 安装教程(详细说明)

    如果你装过,一定要先卸载干净,并且重启重新装.卸载教程(保证成功)https://www.cnblogs.com/qzhc/p/11354678.html 大家都知道MySQL是一款中.小型关系型数据 ...

  10. leetcode-mid-others-150. Evaluate Reverse Polish Notation

    mycode   42.30%. 注意:如果不考虑符号,-1//3=-1而不是等于0,因为是向下取整 class Solution(object): def evalRPN(self, tokens) ...