当前位置: 移动技术网 > IT编程>开发语言>.net > ASP.NET数据绑定GridView控件使用技巧

ASP.NET数据绑定GridView控件使用技巧

2017年12月12日  | 移动技术网IT编程  | 我要评论

麻仓优全集,天津酷文字聊天室,一吨柴油有多少升

不得不说gridview控件的功能确实很强大,一个简简单单的控件就可以把数据管理的很美。在这两天做的任务中碰到的一些gridview控件中遇到的问题进行总结;

①:在gridview控件中随意显示数据库中的信息:

gridview控件中有一个autogeneratecolumns属性,它的作用就是控制gridview控件是否在运行的时候自动生成相关联的列,一般情况下把这个属性设置成为false。因为我们需要的是一个diy的gridview控件。然后点击右上角的箭头,选择编辑列添加一个boundfield字段,选择数据datafield属性,在后面填上自己想要显示数据库中某一列的列名,在外观headertext属性中填写数据库中要显示的列名加以提示。然后点击确定控件中就会显示如下图所示:

 

然后在asp后台中添加链接数据库代码就ok了。关于链接数据库的代码博主在博文“【asp】用gridview控件连接sql server数据库”中已经做了详细介绍,本文就不多说了。

②:在gridview控件中实现编辑删除的功能:

点击gridview控件右上角的箭头,选择编辑列,添加commandfield字段,设置此字段行为属性showdeletebutton和showeditbutton为true。点击确定即可。结果如图下所示:

 

 但是此时的编辑删除不会有任何功能。因为gridview控件中有好多事件,实现编辑删除功能是要触发相应的事件才可以用。

首先介绍第一个事件——rowediting。运行页面的时候点击编辑会出现“更改”和“取消”。此事件的作用就是点击编辑时可以显示更新和取消。 rowcancelingedit。运行页面的时候点击编辑会出现“更改”和“取消”,运行结果如下图所示:

 

双击此事件,在后台添加代码如下:

   protected void gridview1_rowediting(object sender, gridviewediteventargs e)

    {

      gridview1.editindex = e.neweditindex;

      this.shuaxin();

    }

第二个事件——rowcancelingedit       事件rowcancelingedit就是实现取消功能。双击此事件填写代码如下:

   protected void gridview1_rowcancelingedit(object sender, gridviewcancelediteventargs e)

   {

    gridview1.editindex = -1;

    this.shuaxin();

   }

第三个事件——rowupdating实现更新功能,双击此事件添加代码如下:

    protected void gridview1_rowupdating(object sender, gridviewupdateeventargs e)

    {

      this.gridview1.editindex = e.rowindex;

      string title = gridview1.datakeys[e.rowindex].value.tostring();

      string cotent = ((textbox)(gridview1.rows[e.rowindex].cells[1].controls[0])).text;

 

      string strsql = "update activities set cotent='" + cotent + "'

               where title='" + title + "'";

      sqlconnection con = new sqlconnection(configurationmanager.

                connectionstrings["username"].connectionstring);

      sqlcommand cmd = new sqlcommand(strsql, con);

      con.open();

      cmd.executenonquery();

      con.close();

      gridview1.editindex = -1;

      this.shuaxin();

    }

第四个事件——rowdeleting。此事件实现删除功能,双击事件添加代码如下:

    protected void gridview1_rowdeleting(object sender, gridviewdeleteeventargs e)

    {

      string title = gridview1.datakeys[e.rowindex].value.tostring();

 

      string delete = "delete activities where title='" + title + "'";

 

      sqlconnection con = new sqlconnection(configurationmanager.

                connectionstrings["username"].connectionstring);

      sqlcommand cmd = new sqlcommand(delete, con);

      con.open();

      cmd.executenonquery();

      con.close();

      gridview1.editindex = -1;

      this.shuaxin();  //自己写的链接数据库的方法;

    }

附:shuaxin();代码:

    private void shuaxin()

    {

      sqlconnection sqlcon = new sqlconnection(configurationmanager.

                 connectionstrings["username"].connectionstring);

      sqlcon.open();

      sqldataadapter da = new sqldataadapter(@"select * from activities", sqlcon);

      dataset ds = new dataset();

      da.fill(ds);

      if (ds.tables[0].rows.count > 0)

      {

        gridview1.datasource = ds;

        gridview1.databind();

      }

      sqlcon.close();

    }

注:gridview控件中有一个datakeynames属性,设置datakeyname是要在点击行时获得该行数据的主键,

以保证删除更新时准确性;若没有设置此属性就会出现如下结果:

以上就是关于asp.net数据绑定gridview控件使用技巧,希望对大家的学习有所帮助。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网