`
ding20688
  • 浏览: 62252 次
  • 性别: Icon_minigender_1
  • 来自: 烟台
社区版块
存档分类
最新评论

GridView用法

阅读更多
GridView用法: 
1、分页
属性:AllowPaging(设置是否允许分页) PageSize (设置每页的数量条数)。
GridView的PageIndexChanging事件 
GridView1.PageIndex = e.NewPageIndex;     //e是系统自定的
GrdBindData();  //重新绑定数据

2、删除数据(RowDeleting事件),修改数据(RowUpdating事件)
string CustomerID = GridView1.DataKeys[e.RowIndex].value.tostring();
DeleteCustomers(CustomerID);
/*如果是修改数据的话
如果不加上IsPostBack,取得的值是数据库中的字段,而不是GridView表格中TextBox的值,但如果加上IsPostBack就一切正常.
string CustomerID = GridView1.DataKeys[e.RowIndex][0].ToString();
string CompanyName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text;
string ContactName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
UpdateCustomers(CustomerID, CompanyName, ContactName, Address);
GridView1.EditIndex = -1;
*/
GrdBindData();  //重新绑定数据

3、进入编辑状态(RowEditing事件)
   this.GridView1.EditIndex = e.NewEditIndex;
    GrdBindData();  //重新绑定数据

4、终止编辑状态(RowCancelingEdit事件)
   this.GridView1.EditIndex  = -1;
    GrdBindData();  //重新绑定数据

5、鼠标移到GridView某一行时改变该行的背景色的方法,添加行号的方法(RowDataBound事件)
//首先判断是否是数据行
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            //当鼠标停留时更改背景色
            e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#00A9FF'");
            //当鼠标移开时还原背景色
            e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
            ////当有编辑列时,避免出错,要加的RowState判断
            //if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
            //{
            //    ((LinkButton)e.Row.Cells[3].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('您确定要删除:\"" + e.Row.Cells[1].Text + "\"吗?')");
            //}
        }
//添加行号,这时最好把前台的第一列的表头该为“编号”,因为以前的第一列被“吃掉”了。
        if (e.Row.RowIndex != -1)
        {
            int id = e.Row.RowIndex + 1;
            e.Row.Cells[0].Text = id.ToString();
        }

6、GridView实现用“...”代替超长字符串  方法:数据绑定后过滤每一行即可
            for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
            {
                string gIntro;
                if (GridView1.PageIndex == 0)
                {
                    DataTable vDt = SqlHelper.GetDataTable();
                    gIntro = Convert.ToString(vDt.Rows[i][2]);//所要处理的字段
                    GridView1.Rows[i].Cells[3].Text = SubStr(gIntro, 2);
                }
//截取字符的方法
public string SubStr(string sString, int nLeng)
{
if (sString.Length <= nLeng)
{
return sString;
}
string sNewStr = sString.Substring(0, nLeng);
sNewStr = sNewStr + "...";
return sNewStr;
}

7、每行添加Checkbox,添加模板列即可
<asp:TemplateField>
                <HeaderTemplate>选择</HeaderTemplate>
                 <ItemTemplate>
                     <asp:CheckBox ID="CheckBox1" runat="server" />
                 </ItemTemplate>
                </asp:TemplateField>

8、全选的checkbox的CheckedChanged事件
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
        {
            CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
            if (CheckBox2.Checked == true)
            {
                cbox.Checked = true;
            }
            else
            {
                cbox.Checked = false;
            }
        }
9、删除所选的Button的onclick事件
  int vNum=0;
        using (SqlConnection conn = new SqlConnection(SqlConnStr))
        {
            conn.Open();
            for (int i = 0; i < GridView1.Rows.Count - 1; i++)
            {
                CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
                if (cbox.Checked == true)
                {
                    DelSelect(Convert.ToInt32(GridView1.DataKeys[i].Value));
                    vNum++;
                }
            }
        }
        GridDataBind();
        ClientScript.RegisterStartupScript(this.GetType(), "", string.Format("<script language='javascript' type='text/javascript'>alert('删除了{0}条记录');</script>", vNum));

10、在winform中gridview改了个名字叫DataGridview,绘制行号的方法如下:
private void gvdata_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
        {
         
                Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
                    Convert.ToInt32(e.RowBounds.Location.Y + (e.RowBounds.Height - gvdata.RowHeadersDefaultCellStyle.Font.Size) / 2),
                    gvdata.RowHeadersWidth - 4, e.RowBounds.Height);
                TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(),
                    gvdata.RowHeadersDefaultCellStyle.Font, rectangle, gvdata.RowHeadersDefaultCellStyle.ForeColor,
                    TextFormatFlags.Right);
        }

11、gridview空数据时 也显示列头
<asp:GridView ID="GridView1" runat="server" >
        <EmptyDataTemplate>
            <table>
                <tr>

                    <th>Id</th>
                    <th>Name</th>
                    <th>Department</th>
                </tr>
                <tr>
                    <td colspan="3">
                        对不起,没有找到任何相关记录
                    </td>
                </tr>
            </table>
        </EmptyDataTemplate>
        <Columns>
            <asp:TemplateField>
                <HeaderTemplate>ID</HeaderTemplate>
                <ItemTemplate><%#eval_r("Id") %></ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField>
                <HeaderTemplate>Name</HeaderTemplate>
                <ItemTemplate><%#eval_r("Name") %></ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField>
                <HeaderTemplate> Department</HeaderTemplate>
                <ItemTemplate><%#eval_r("Department") %></ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>
分享到:
评论

相关推荐

    Gridview用法大全

    Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview...

    GridView使用方法

    ### GridView使用方法详解 #### 1. GridView无代码分页排序 在ASP.NET中,`GridView` 控件是非常强大的一个工具,它可以帮助我们快速地显示、排序和分页数据库中的数据。下面详细介绍如何实现无代码分页排序: - *...

    gridview用法大全

    本篇文章将详细阐述GridView的使用方法,包括基本配置、数据绑定、事件处理、自定义样式以及一些高级特性。 首先,GridView的基本配置涉及控件的初始化和属性设置。在ASP.NET页面的HTML部分,我们需要声明一个...

    Gridview用法大总结

    ### Gridview用法大总结 #### 一、概述 Gridview是ASP.NET中一个非常重要的控件,用于显示和管理数据库中的数据。它提供了一种简单直观的方式来展示数据,并允许用户进行各种操作如排序、分页等。Gridview的强大之...

    GridView 用法 DEMO

    这个"GridView 用法 DEMO"应该是包含了一个实例,演示了如何在Android应用中使用GridView进行数据展示、添加、删除和修改操作。下面我们将深入探讨GridView的基本概念、功能以及如何在实践中运用。 ### 1. GridView...

    GridView用法大合集

    ### GridView用法大合集 #### 1. 数据绑定并实现分页功能 **1.1 GridView控件数据绑定与分页技术有关属性与事件** - **AllowPaging**: 获取或设置一个布尔值,该值指示是否启用GridView控件的分页功能。如果设置...

    android下GridView用法

    本教程将详细讲解Android中的GridView及其使用方法。 1. GridView简介: GridView继承自ViewGroup,它会把子视图按照指定的列数进行排列,形成一个可滚动的网格视图。每个子视图可以是ImageView、TextView或其他...

    GridView使用方法总结.rar_gridview

    这篇文档将深入讲解GridView的使用方法,包括基本配置、数据绑定、自定义适配器、事件处理等方面。 一、GridView的基本使用 1. 布局文件配置:在XML布局文件中,我们需要添加GridView标签,并设置其属性。例如,`...

    GridView 用法详解

    在这个“GridView 用法详解”中,我们将深入探讨如何有效地利用GridView来构建功能丰富的用户界面。 1. ** GridView的基本概念** GridView是一个二维的布局管理器,它将子视图(Views)按照行列的方式排列。每个子...

    java gridview使用方法

    在本篇中,我们将深入探讨Java GridView的使用方法,特别针对Android平台。 1. **GridView的布局** 在Android开发中,GridView是`android.widget.GridView`类的一部分。首先,我们需要在XML布局文件中添加GridView...

    Gridview用法大总结(牛年珍藏版)

    以下是对标题和描述中提到的GridView用法的详细总结: 1. **无后台代码的增删改查**:通过在GridView中配置`InsertItemTemplate`、`EditItemTemplate`和`CommandField`,用户可以直接在前端进行数据的添加、删除和...

    GridView用法大全(doc+aspx)

    2. 动态数据绑定:在Page_Load事件中,使用DataSource属性和DataBind()方法手动绑定数据。 四、模板字段(TemplateField) TemplateField允许自定义列的显示内容,可以插入HTML、控件或者其他模板。这在需要显示...

Global site tag (gtag.js) - Google Analytics