ASP.NET—002:GridView手动增加一行-创新互联

ASP.NET中的gridview如何增加一行呢,下面介绍一种最简单的方式。
只使用后台的数据,在后台的datatable或者list增加一项,然后重新绑定gridview。
直接看代码
效果:
ASP.NET—002:GridView手动增加一行
实体类

裕华网站建设公司成都创新互联公司,裕华网站设计制作,有大型网站制作公司丰富经验。已为裕华上千余家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的裕华做网站的公司定做!
public class PersonModel
    {
        private int personIndex;


        public int PersonIndex
        {
            get { return personIndex; }


            set { personIndex = value; }
        }


        private string personID;


        public string PersonID
        {
            get { return personID; }


            set { personID = value; }
        }


        private string personName;


        public string PersonName
        {
            get { return personName; }


            set { personName = value; }
        }


        private string personSex;


        public string PersonSex
        {
            get { return personSex; }


            set { personSex = value; }
        }


        private int personAge;


        public int PersonAge
        {
            get { return personAge; }


            set { personAge = value; }
        }


        private bool personSelected = false;


        public bool PersonSelected
        {
            get { return personSelected; }


            set { personSelected = value; }
        }
    }


页面管理类
public class MainManager
    {
        private int sIndex = 0;


        private List<PersonModel> personCollect = new List<PersonModel>();


        private static MainManager instance = null;


        public List<PersonModel> PersonCollect
        {
            get { return personCollect; }


            set { personCollect = value; }
        }


        public static MainManager DoGetInstance()
        {
            if (instance == null)
            {
                instance = new MainManager();
            }


            return instance;
        }


        public void DoAddSinglePersons()
        {
            sIndex = this.PersonCollect.Count;


            PersonModel model = new PersonModel();


            model.PersonIndex = sIndex;


            model.PersonID = System.Guid.NewGuid().ToString();


            model.PersonName = "测试" + sIndex;


            model.PersonAge = 17 + sIndex;


            model.PersonSex = sIndex % 2 == 0 ? "男" : "女";


            model.PersonSelected = false;


            this.PersonCollect.Add(model);
        }
    }


前台
<head runat="server">
    <title></title>
</head>
<body id="MyBody" runat="server" ms_positioning="GridLayout">
    <form id="Form1" runat="server" method="post">
    <div>
    <asp:Button ID="btnAdd" runat="server" OnClick="AddItem_Click" Text="增加" />
    <asp:GridView ID="dgPersons" runat="server" AutoGenerateColumns="False" 
     EnableViewState="false"
    CellPadding="4"  ForeColor="#333333" DataKeyNames="PersonID">
     <Columns>
       <asp:CommandField ShowSelectButton="True" />  
       <asp:BoundField DataField="PersonIndex" HeaderText="序号"/>
       <asp:TemplateField>
       <ItemTemplate>
       <input id="radiobutton1" name="pselect" type="radio" />
       </ItemTemplate>
       </asp:TemplateField>
       <asp:BoundField DataField="PersonName" HeaderText="姓名" />
       <asp:BoundField DataField="PersonAge" HeaderText="年龄" />
       <asp:BoundField DataField="PersonSex" HeaderText="性别" />
     </Columns>
        <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
            <EditRowStyle BackColor="#999999" />
            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
            
    </asp:GridView>
    </div>
    </form>
</body>


后台
public partial class _Default : System.Web.UI.Page
    {
        private MainManager dManager = null;


        protected PersonModel selectItem = null;


        protected void Page_Load(object sender, EventArgs e)
        {
            dManager = MainManager.DoGetInstance();


            if (!IsPostBack)
            {
                dManager.DoAddSinglePersons();


                this.dgPersons.DataSource = dManager.PersonCollect;


                this.dgPersons.DataBind();
            }
        }


        protected void AddItem_Click(object sender, EventArgs e)
        {
            dManager.DoAddSinglePersons();


            this.dgPersons.DataSource = dManager.PersonCollect;


            this.dgPersons.DataBind();
        }
    }
如果一行中有其他list控件比如 下拉列表asp:DropDownList,那么在实体中增加一个list,对应下拉列表的绑定。而且对于每一行的点击,选择等操作都要写相应的事件修改数据,下一次绑定时要将list中的数据修改成操作过的值或状态,再进行绑定。
当然一般来说,使用js增加比较正规一些,下一篇来介绍。
代码下载

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。

文章题目:ASP.NET—002:GridView手动增加一行-创新互联
网站地址:https://www.cdcxhl.com/article8/dsidop.html

成都网站建设公司_创新互联,为您提供外贸网站建设搜索引擎优化网站设计电子商务外贸建站标签优化

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站托管运营