原文: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. 线程优先级队列( Queue)

    Python的Queue模块中提供了同步的.线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列LifoQueue,和优先级队列PriorityQueue.这些队列都实现 ...

  2. POJ 2289 多重二分匹配+二分 模板

    题意:在通讯录中有N个人,每个人能可能属于多个group,现要将这些人分组m组,设各组中的最大人数为max,求出该最小的最大值 下面用的是朴素的查找,核心代码find_path复杂度是VE的,不过据说 ...

  3. PHP 发邮件《转》

    导读:PHP自带的mail()函数,是php内置发邮件的函数,该函数虽然简单,但是要想真正可以发邮件得有很复杂的配置.不适合新手,以及项目实际的应用的开发. php的mail()函数复杂配置,使得直接 ...

  4. js控制页面每次滚动一屏,和楼梯效果

    我最近在做我们公司官网的改版,产品中心就是每次滚一屏的,我觉得加上楼梯更方便用户浏览,就随便写了个demo, 先来看看结构,都很简单的 <!--楼梯--> <ul class=&qu ...

  5. 【canvas学习笔记三】样式和颜色

    上一节我们学习了如何用路径绘制各种形状,但我们只能用默认的颜色和线条.这节就来学习设置不同的颜色和线条样式. 颜色 设置颜色主要有两个属性: fillStyle = color 设置填充颜色 stro ...

  6. springboot集成fastjson

    @Configuration @EnableWebMvc public class WebMvcConfigurer extends WebMvcConfigurerAdapter { /** * f ...

  7. Spring Boot教程(三)消费Restful的web服务

    构架工程 创建一个springboot工程,去消费RESTFUL的服务.这个服务是 http:///gturnquist-quoters.cfapps.io/api/random ,它会随机返回Jso ...

  8. C#获取网页信息并存入数据库

    1,获取以及商品分类信息 给一网页获取网页上商品信息的分类 using Skay.WebBot; using System; using System.Collections.Generic; usi ...

  9. wannafly 挑战赛9 E 组一组 (差分约束)

    链接:https://www.nowcoder.com/acm/contest/71/E 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 65536K,其他语言131072K Spec ...

  10. MongoDB通过JavaDriver执行shell命令,例如创建sharding collection

    Mongodb的java driver本身的接口 void createCollection(String collectionName, CreateCollectionOptions create ...