Asp.net中GridView使用详解

效果图参考:http://hi.baidu.com/hello%5Fworld%5Fws/album/asp%2Enet中以gv开头的图片

l         GridView无代码分页排序

l         GridView选中,编辑,取消,删除

l         GridView正反双向排序

l         GridView和下拉菜单DropDownList结合

l         GridViewCheckBox结合

l         鼠标移到GridView某一行时改变该行的背景色方法一

l         鼠标移到GridView某一行时改变该行的背景色方法二

l         GridView实现删除时弹出确认对话框

l         GridView实现自动编号

l         GridView实现自定义时间货币等字符串格式

l         GridView实现用“...”代替超长字符串

l         GridView一般换行与强制换行

l         GridView显示隐藏某一列

l         GridView弹出新页面/弹出新窗口

l         GridView固定表头(不用JavaScript只用CSS2行代码,很好用)

l         GridView合并表头多重表头无错完美版(以合并33行举例)

l         GridView突出显示某一单元格(例如金额低于多少,分数不及格等)

l         GridView加入自动求和求平均值小计

l         GridView数据导入Excel/Excel数据读入GridView

1.GridView简单代码分页排序:

1.AllowSorting设为True,aspx代码中是AllowSorting="True";

2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12"。

3.默认的是单向排序的,右击GridView弹出“属性”,选择AllowSorting为True即可。

4.添加代码:

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)

{

GridView1.PageIndex = e.NewPageIndex;

Bind();

}

2.GridView选中,编辑,取消,删除:

后台代码:

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page

{

SqlConnection sqlcon;

SqlCommand sqlcom;

string strCon = "Data Source=(local);Database=数据库名;Uid=帐号;Pwd=密码";

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

bind();

}

}

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)

{

GridView1.EditIndex = e.NewEditIndex;

bind();

}

//删除

protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)

{

string sqlstr = "delete from 表 where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";

sqlcon = new SqlConnection(strCon);

sqlcom = new SqlCommand(sqlstr,sqlcon);

sqlcon.Open();

sqlcom.ExecuteNonQuery();

sqlcon.Close();

bind();

}

//更新

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)

{

sqlcon = new SqlConnection(strCon);

string sqlstr = "update 表 set 字段1='"

+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',字段2='"

+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',字段3='"

+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where id='"

+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";

sqlcom=new SqlCommand(sqlstr,sqlcon);

sqlcon.Open();

sqlcom.ExecuteNonQuery();

sqlcon.Close();

GridView1.EditIndex = -1;

bind();

}

//取消

protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)

{

GridView1.EditIndex = -1;

bind();

}

//绑定

public void bind()

{

string sqlstr = "select * from 表";

sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

DataSet myds = new DataSet();

sqlcon.Open();

myda.Fill(myds, "表");

GridView1.DataSource = myds;

GridView1.DataKeyNames = new string[] { "id" };//主键

GridView1.DataBind();

sqlcon.Close();

}

}

前台主要代码:

... ...

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4"

ForeColor="#333333" GridLines="None" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit">

<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="用户ID" ReadOnly="True" />

<asp:BoundField DataField="姓名" HeaderText="用户姓名" />

<asp:BoundField DataField="员工性别" HeaderText="性别" />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" />

<asp:CommandField HeaderText="选择" ShowSelectButton="True" />

<asp:CommandField HeaderText="编辑" ShowEditButton="True" />

<asp:CommandField HeaderText="删除" ShowDeleteButton="True" />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

3.GridView正反双向排序:

后台代码:

using System;

using System.Data;

using System.Configuration;

using System.Collections;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

public partial class Default3 : System.Web.UI.Page

{    SqlConnection sqlcon;

string strCon = "Data Source=(local);Database=北风贸易;Uid=sa;Pwd=";

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

ViewState["SortOrder"] = "身份证号码";

ViewState["OrderDire"] = "ASC";

bind();

}

}

protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)

{

string sPage = e.SortExpression;

if (ViewState["SortOrder"].ToString() == sPage)

{

if (ViewState["OrderDire"].ToString() == "Desc")

ViewState["OrderDire"] = "ASC";

else

ViewState["OrderDire"] = "Desc";

}

else

{

ViewState["SortOrder"] = e.SortExpression;

}

bind();

}

public void bind()

{

string sqlstr = "select top 5 * from 飞狐工作室";

sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

DataSet myds = new DataSet();

sqlcon.Open();

myda.Fill(myds, "飞狐工作室");

DataView view = myds.Tables["飞狐工作室"].DefaultView;

string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];

view.Sort = sort;

GridView1.DataSource = view;

GridView1.DataBind();

sqlcon.Close();

}

}

前台主要代码:

<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False"

CellPadding="3" Font-Size="9pt" OnSorting="GridView1_Sorting" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px">

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="用户ID" SortExpression="身份证号码" />

<asp:BoundField DataField="姓名" HeaderText="用户姓名" SortExpression="姓名"/>

<asp:BoundField DataField="员工性别" HeaderText="性别" SortExpression="员工性别"/>

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" SortExpression="家庭住址"/>

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

 

4.GridView和下拉菜单DropDownList结合:

后台代码:

using System;

using System.Data;

using System.Configuration;

using System.Collections;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

public partial class Default4 : System.Web.UI.Page

{

SqlConnection sqlcon;

string strCon = "Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa";

protected void Page_Load(object sender, EventArgs e)

{

DropDownList ddl;

if (!IsPostBack)

{

string sqlstr = "select top 5 * from 飞狐工作室";

sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

DataSet myds = new DataSet();

sqlcon.Open();

myda.Fill(myds, "飞狐工作室");

GridView1.DataSource = myds;

GridView1.DataBind();

for (int i = 0; i <= GridView1.Rows.Count - 1; i++)

{

DataRowView mydrv = myds.Tables["飞狐工作室"].DefaultView[i];

if (Convert.ToString(mydrv["员工性别"]).Trim() == "True")

{

ddl = (DropDownList)GridView1.Rows[i].FindControl("DropDownList1");

ddl.SelectedIndex = 0;

}

if (Convert.ToString(mydrv["员工性别"]).Trim() == "False")

{

ddl = (DropDownList)GridView1.Rows[i].FindControl("DropDownList1");

ddl.SelectedIndex = 1;

}

}

sqlcon.Close();

}

}

public SqlDataReader ddlbind()

{

string sqlstr = "select distinct 员工性别 from 飞狐工作室";

sqlcon = new SqlConnection(strCon);

SqlCommand sqlcom = new SqlCommand(sqlstr, sqlcon);

sqlcon.Open();

return sqlcom.ExecuteReader();

}

前台主要代码:

<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False"

CellPadding="3" Font-Size="9pt"  BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px">

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="用户ID" SortExpression="身份证号码" />

<asp:BoundField DataField="姓名" HeaderText="用户姓名" SortExpression="姓名"/>

<asp:TemplateField HeaderText="员工性别">

<ItemTemplate>

<asp:DropDownList ID="DropDownList1" runat="server" DataSource='<%# ddlbind()%>' DataValueField="员工性别" DataTextField="员工性别">

</asp:DropDownList>

</ItemTemplate>

</asp:TemplateField>

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" SortExpression="家庭住址"/>

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

5.GridViewCheckBox结合:

后台代码:

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

public partial class Default5 : System.Web.UI.Page

{

SqlConnection sqlcon;

string strCon = "Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa";

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

bind();

}

}

protected void CheckBox2_CheckedChanged(object sender, EventArgs e)

{

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;

}

}

}

protected void Button2_Click(object sender, EventArgs e)

{

sqlcon = new SqlConnection(strCon);

SqlCommand sqlcom;

for (int i = 0; i <= GridView1.Rows.Count - 1; i++)

{

CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");

if (cbox.Checked == true)

{

string sqlstr = "delete from 飞狐工作室 where 身份证号码='" + GridView1.DataKeys[i].Value + "'";

sqlcom = new SqlCommand(sqlstr, sqlcon);

sqlcon.Open();

sqlcom.ExecuteNonQuery();

sqlcon.Close();

}

}

bind();

}

protected void Button1_Click(object sender, EventArgs e)

{

CheckBox2.Checked = false;

for (int i = 0; i <= GridView1.Rows.Count - 1; i++)

{

CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");

cbox.Checked = false;

}

}

public void bind()

{

string sqlstr = "select top 5 * from 飞狐工作室";

sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

DataSet myds = new DataSet();

sqlcon.Open();

myda.Fill(myds, "tb_Member");

GridView1.DataSource = myds;

GridView1.DataKeyNames = new string[] { "身份证号码" };

GridView1.DataBind();

sqlcon.Close();

}

}

前台主要代码:

<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False"

CellPadding="3" Font-Size="9pt"  BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px">

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:TemplateField>

<ItemTemplate>

<asp:CheckBox ID="CheckBox1" runat="server" />

</ItemTemplate>

</asp:TemplateField>

<asp:BoundField DataField="身份证号码" HeaderText="用户ID" SortExpression="身份证号码" />

<asp:BoundField DataField="姓名" HeaderText="用户姓名" SortExpression="姓名"/>

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" SortExpression="家庭住址"/>

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

<asp:CheckBox ID="CheckBox2" runat="server" AutoPostBack="True" Font-Size="9pt" OnCheckedChanged="CheckBox2_CheckedChanged"

Text="全选" />

<asp:Button ID="Button1" runat="server" Font-Size="9pt" Text="取消" OnClick="Button1_Click" />

<asp:Button ID="Button2" runat="server" Font-Size="9pt" Text="删除" OnClick="Button2_Click" />

6.鼠标移到GridView某一行时改变该行的背景色方法一:

做法:

双击GridView的OnRowDataBound事件;

在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

    //首先判断是否是数据行

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");

}

}

前台代码:

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>实现鼠标划过改变GridView的行背景色清清月儿http://blog.csdn.net/21aspnet </title>

</head>

<body>

<form id="form1" runat="server">

<div>

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="身份证号码"

DataSourceID="SqlDataSource1" AllowSorting="True" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3" Font-Size="12px" OnRowDataBound="GridView1_RowDataBound">

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="身份证号码" ReadOnly="True" SortExpression="身份证号码" />

<asp:BoundField DataField="姓名" HeaderText="姓名" SortExpression="姓名" />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" SortExpression="家庭住址" />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" SortExpression="邮政编码" />

</Columns>

<FooterStyle BackColor="White" ForeColor="#000066" />

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:北风贸易ConnectionString1 %>"

SelectCommand="SELECT top 5 [身份证号码], [姓名], [员工性别], [家庭住址], [邮政编码] FROM [飞狐工作室]" DataSourceMode="DataReader"></asp:SqlDataSource>

</div>

</form>

</body>

</html>

 

7.鼠标移到GridView某一行时改变该行的背景色方法二:

做法:和上面的一样就是代码不同

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

//如果是绑定数据行

if (e.Row.RowType == DataControlRowType.DataRow)

{

//鼠标经过时,行背景色变

e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#E6F5FA'");

//鼠标移出时,行背景色变

e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor='#FFFFFF'");

}

}

8.GridView实现删除时弹出确认对话框:

实现方法:

双击GridView的OnRowDataBound事件;

在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

//如果是绑定数据行

if (e.Row.RowType == DataControlRowType.DataRow)

{

if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)

{

((LinkButton)e.Row.Cells[6].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('你确认要删除:/"" + e.Row.Cells[1].Text + "/"吗?')");

}

}

}

9.GridView实现自动编号:

实现方法:

双击GridView的OnRowDataBound事件;

在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowIndex != -1)

{

int id = e.Row.RowIndex + 1;

e.Row.Cells[0].Text = id.ToString();

}

}

注意这时最好把前台的第一列的表头该为“编号”,因为以前的第一列被“吃掉”了。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="3" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px" OnRowDataBound="GridView1_RowDataBound">

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="姓名" HeaderText="用户姓名" />

<asp:BoundField DataField="员工性别" HeaderText="性别" />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" />

<asp:CommandField HeaderText="选择" ShowSelectButton="True" />

<asp:CommandField HeaderText="编辑" ShowEditButton="True" />

<asp:CommandField HeaderText="删除" ShowDeleteButton="True" />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

10.GridView实现自定义时间货币等字符串格式:

解决方法:

在asp.NET 2.0中,如果要在绑定列中显示比如日期格式等,如果用下面的方法是显示不了的

<asp :BoundField DataField="CreationDate"

DataFormatString="{0:M-dd-yyyy}"

HeaderText="CreationDate" />

主要是由于htmlencode属性默认设置为true,已防止XSS攻击,安全起见而用的,所以,可以有以下两种方法解决

1、

<asp :GridView ID="GridView1" runat="server">

<columns>

<asp :BoundField DataField="CreationDate"

DataFormatString="{0:M-dd-yyyy}"

HtmlEncode="false"

HeaderText="CreationDate" />

</columns>

</asp>

将htmlencode设置为false即可

另外的解决方法为,使用模版列

<asp :GridView ID="GridView3" runat="server" >

<columns>

<asp :TemplateField HeaderText="CreationDate" >

<edititemtemplate>

<asp :Label ID="Label1" runat="server"

Text='<%# Eval("CreationDate", "{0:M-dd-yyyy}") %>'>

</asp>

</edititemtemplate>

<itemtemplate>

<asp :Label ID="Label1" runat="server"

Text=’<%# Bind("CreationDate", "{0:M-dd-yyyy}") %>'>

</asp>

</itemtemplate>

</asp>

</columns>

</asp>

前台代码:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="身份证号码"

DataSourceID="SqlDataSource1" AllowSorting="True" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3" Font-Size="12px" OnRowDataBound="GridView1_RowDataBound">

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="身份证号码" ReadOnly="True" SortExpression="身份证号码" />

<asp:BoundField DataField="姓名" HeaderText="姓名" SortExpression="姓名" />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" SortExpression="邮政编码" />

<asp:BoundField DataField="出生日期" HeaderText="出生日期" SortExpression="出生日期" />

<asp:BoundField DataField="起薪" HeaderText="起薪" SortExpression="起薪" />

</Columns>

<FooterStyle BackColor="White" ForeColor="#000066" />

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:北风贸易ConnectionString1 %>"

SelectCommand="SELECT top 5 [出生日期], [起薪], [身份证号码], [姓名], [家庭住址], [邮政编码] FROM [飞狐工作室]" DataSourceMode="DataReader"></asp:SqlDataSource>

附录-常用格式化公式:

{0:C}  货币;

{0:D4}由0填充的4个字符宽的字段中显示整数;

{0:000.0}四舍五入小数点保留第几位有效数字;

{0:N2}小数点保留2位有效数字;{0:N2}%   小数点保留2位有效数字加百分号;

{0:D}长日期;{0:d}短日期;{0:yy-MM-dd}   例如07-3-25;;{0:yyyy-MM-dd}  例如2007-3-25

11.GridView实现用“...”代替超长字符串:

解决方法:数据绑定后过滤每一行即可

for (int i = 0; i <= GridView1.Rows.Count - 1; i++)

{

DataRowView mydrv;

string gIntro;

if (GridView1.PageIndex == 0)

{

mydrv = myds.Tables["飞狐工作室"].DefaultView[i];//表名

gIntro = Convert.ToString(mydrv["家庭住址"]);//所要处理的字段

GridView1.Rows[i].Cells[3].Text = SubStr(gIntro, 2);

}

else

{

mydrv = myds.Tables["飞狐工作室"].DefaultView[i + (5 * GridView1.PageIndex)];

gIntro = Convert.ToString(mydrv["家庭住址"]);

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;

}

12.GridView一般换行与强制换行:

首先设置<asp:BoundField DataField="家庭住址" HeaderText="家庭住址" ItemStyle-Width="100" />gridview里有一列绑定的数据很长,显示的时候在一行里面显示,页面拉得很宽。原因是连续英文段为一个整体导致的,在RowDataBound中添加上了一句e.Row.Cells[2].Style.Add("word-break", "break-all")就可以。如果要给所有的列增加此属性:

protected void Page_Load(object sender, EventArgs e)

{

//正常换行

GridView1.Attributes.Add("style", "word-break:keep-all;word-wrap:normal");

//下面这行是自动换行

GridView1.Attributes.Add("style", "word-break:break-all;word-wrap:break-word");

if (!IsPostBack)

{

bind();//调用数据绑定即可

}

}

总之:善用CSS的word-break:break-all;word-wrap:break-word属性即可,这个属性是通用的对于顽固的南换行问题都可以解决,不局限于GridView。

13.GridView显示隐藏某一列:

解决方案:

public void bind()

{

string sqlstr = "select top 5 * from 飞狐工作室";

sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

DataSet myds = new DataSet();

sqlcon.Open();

myda.Fill(myds, "飞狐工作室");

GridView1.DataSource = myds;

GridView1.DataKeyNames = new string[] { "身份证号码" };

GridView1.DataBind();

sqlcon.Close();

GridView1.Columns[3].Visible = false;//一开始隐藏

CheckBox1.Checked = false;//如果不这样后面的代码会把他True

}

双击CheckBox1,在CheckedChanged方法里写上代码,最后代码如下:

protected void CheckBox1_CheckedChanged(object sender, EventArgs e)

{

GridView1.Columns[3].Visible=! GridView1.Columns[3].Visible;

Response.Write("GridView1的第4列现在的显示隐藏状态是:"+GridView1.Columns[3].Visible.ToString());

}

注意:CheckBox1的AutoPostBack要True!

14.GridView弹出新页面:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="3" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px"  >

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" SortExpression="邮政编码" />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"  />

<asp:HyperLinkField HeaderText="姓名" Text="姓名" DataNavigateUrlFields="姓名" DataNavigateUrlFormatString="Default6.aspx?GoodsID={0}" Target="mainframe" NavigateUrl="~/Default6.aspx" DataTextField="姓名" >

</asp:HyperLinkField>

<asp:CommandField HeaderText="选择" ShowSelectButton="True" />

<asp:CommandField HeaderText="编辑" ShowEditButton="True" />

<asp:CommandField HeaderText="删除" ShowDeleteButton="True" />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

DataNavigateUrlFields是链接的字段名,DataNavigateUrlFormatString是路径。

15.GridView固定表头(不用javascript只用CSS!,很好用)

代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>GridView固定表头 清清月儿http://blog.csdn.net/21aspnet </title>

<style>

.Freezing

{

position:relative ;

table-layout:fixed;

top:expression(this.offsetParent.scrollTop);

z-index: 10;

}

.Freezing th{text-overflow:ellipsis;overflow:hidden;white-space: nowrap;padding:2px;}

</style>

</head>

<body style="font-size=12px">

<form id="form1" runat="server">

<div style="overflow-y: scroll; height: 200px;width:300px" id="dvBody">

<asp:GridView ID="GridView1" runat="server"    AutoGenerateColumns="False" CellPadding="3" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px" OnRowCreated="GridView1_RowCreated"  >

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" SortExpression="邮政编码" />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"  />

<asp:BoundField DataField="姓名" HeaderText="姓名"  />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left"  CssClass="ms-formlabel DataGridFixedHeader"/>

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" CssClass="Freezing"/>

</asp:GridView>

</div>

</form>

</body>

</html>

用法:CSS设如上的样式,HeaderStyle加CssClass="Freezing,套住GridView的Div设置高度宽度 <div style="overflow-y: scroll; height: 200px;width:200px" >

16.GridView合并表头多重表头无错完美版(以合并33行举例)

后台代码:

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)

{

switch (e.Row.RowType)

{

case DataControlRowType.Header:

//第一行表头

TableCellCollection tcHeader = e.Row.Cells;

tcHeader.Clear();

tcHeader.Add(new TableHeaderCell());

tcHeader[0].Attributes.Add("rowspan", "3"); //跨Row

tcHeader[0].Attributes.Add("bgcolor", "white");

tcHeader[0].Text = "";

tcHeader.Add(new TableHeaderCell());

//tcHeader[1].Attributes.Add("bgcolor", "Red");

tcHeader[1].Attributes.Add("colspan", "6"); //跨Column

tcHeader[1].Text = "全部信息</th></tr><tr>";

//第二行表头

tcHeader.Add(new TableHeaderCell());

tcHeader[2].Attributes.Add("bgcolor", "DarkSeaGreen");

tcHeader[2].Text = "身份证号码";

tcHeader.Add(new TableHeaderCell());

tcHeader[3].Attributes.Add("bgcolor", "LightSteelBlue");

tcHeader[3].Attributes.Add("colspan", "2");

tcHeader[3].Text = "基本信息";

tcHeader.Add(new TableHeaderCell());

tcHeader[4].Attributes.Add("bgcolor", "DarkSeaGreen");

tcHeader[4].Text = "福利";

tcHeader.Add(new TableHeaderCell());

tcHeader[5].Attributes.Add("bgcolor", "LightSteelBlue");

tcHeader[5].Attributes.Add("colspan", "2");

tcHeader[5].Text = "联系方式</th></tr><tr>";

//第三行表头

tcHeader.Add(new TableHeaderCell());

tcHeader[6].Attributes.Add("bgcolor", "Khaki");

tcHeader[6].Text = "身份证号码";

tcHeader.Add(new TableHeaderCell());

tcHeader[7].Attributes.Add("bgcolor", "Khaki");

tcHeader[7].Text = "姓名";

tcHeader.Add(new TableHeaderCell());

tcHeader[8].Attributes.Add("bgcolor", "Khaki");

tcHeader[8].Text = "出生日期";

tcHeader.Add(new TableHeaderCell());

tcHeader[9].Attributes.Add("bgcolor", "Khaki");

tcHeader[9].Text = "薪水";

tcHeader.Add(new TableHeaderCell());

tcHeader[10].Attributes.Add("bgcolor", "Khaki");

tcHeader[10].Text = "家庭住址";

tcHeader.Add(new TableHeaderCell());

tcHeader[11].Attributes.Add("bgcolor", "Khaki");

tcHeader[11].Text = "邮政编码";

break;

}

}

}

前台:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>GridView合并多重表头表头 清清月儿http://blog.csdn.net/21aspnet </title>

</head>

<body >

<form id="form1" runat="server">

<div  >

<asp:GridView ID="GridView1" runat="server"    AutoGenerateColumns="False" CellPadding="3" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px" OnRowCreated="GridView1_RowCreated"  >

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:CommandField HeaderText="编辑" ShowEditButton="True" />

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="姓名" HeaderText="姓名"  />

<asp:BoundField DataField="出生日期" HeaderText="邮政编码"  />

<asp:BoundField DataField="起薪" HeaderText="起薪"  />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"  />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left"  CssClass="ms-formlabel DataGridFixedHeader"/>

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

</div>

</form>

</body>

</html>

17.GridView突出显示某一单元格(例如金额低于多少,分数不及格等)

解决方案:主要是绑定后过滤

GridView1.DataBind();

for (int i = 0; i <= GridView1.Rows.Count - 1; i++)

{

DataRowView mydrv = myds.Tables["飞狐工作室"].DefaultView[i];

string score = Convert.ToString(mydrv["起薪"]);

if (Convert.ToDouble(score) < 34297.00)//大家这里根据具体情况设置可能ToInt32等等

{

GridView1.Rows[i].Cells[4].BackColor = System.Drawing.Color.Red;

}

}

sqlcon.Close();

前台代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head id="Head1" runat="server">

<title>GridView突出显示某一单元格 清清月儿http://blog.csdn.net/21aspnet </title>

</head>

<body >

<form id="form1" runat="server">

<div  >

<asp:GridView ID="GridView1" runat="server"    AutoGenerateColumns="False" CellPadding="3" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px"  >

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:CommandField HeaderText="编辑" ShowEditButton="True" />

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="姓名" HeaderText="姓名"  />

<asp:BoundField DataField="出生日期" HeaderText="邮政编码"  />

<asp:BoundField DataField="起薪" HeaderText="起薪"  DataFormatString="{0:C}" HtmlEncode="false"/>

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"  />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left"  CssClass="ms-formlabel DataGridFixedHeader"/>

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

</div>

</form>

</body>

</html>

18.GridView加入自动求和求平均值小计

解决方案:

private double sum = 0;//取指定列的数据和,你要根据具体情况对待可能你要处理的是int

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowIndex >= 0)

{

sum += Convert.ToDouble(e.Row.Cells[6].Text);

}

else if (e.Row.RowType == DataControlRowType.Footer)

{

e.Row.Cells[5].Text = "总薪水为:";

e.Row.Cells[6].Text = sum.ToString();

e.Row.Cells[3].Text = "平均薪水为:";

e.Row.Cells[4].Text = ((int)(sum / GridView1.Rows.Count)).ToString();

}

}

前台:唯一的花头就是设置ShowFooter="True" ,否则默认表头为隐藏的!

<asp:GridView ID="GridView1" runat="server"    AutoGenerateColumns="False" CellPadding="3" OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px" OnRowDataBound="GridView1_RowDataBound" ShowFooter="True"  >

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:CommandField HeaderText="编辑" ShowEditButton="True" />

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="姓名" HeaderText="姓名"  />

<asp:BoundField DataField="出生日期" HeaderText="邮政编码"  />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"  />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" />

<asp:BoundField DataField="起薪" HeaderText="起薪"  />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left"  CssClass="ms-formlabel DataGridFixedHeader"/>

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

 19.GridView数据导入Excel/Excel数据读入GridView

解决方案:

页面增加一个按钮,单击事件添加如下方法:

protected void Button1_Click(object sender, EventArgs e)

{

Export("application/ms-excel", "学生成绩报表.xls");

}

private void Export(string FileType, string FileName)

{

Response.Charset = "GB2312";

Response.ContentEncoding = System.Text.Encoding.UTF7;

Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());

Response.ContentType = FileType;

this.EnableViewState = false;

StringWriter tw = new StringWriter();

HtmlTextWriter hw = new HtmlTextWriter(tw);

GridView1.RenderControl(hw);

Response.Write(tw.ToString());

Response.End();

}

//如果没有下面方法会报错类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内

public override void VerifyRenderingInServerForm(Control control)

{

}

还有由于是文件操作所以要引入名称空间IO和Text

后台代码:

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

using System.Drawing;

using System.IO;

using System.Text;

public partial class Default7 : System.Web.UI.Page

{

SqlConnection sqlcon;

SqlCommand sqlcom;

string strCon = "Data Source=(local);Database=北风贸易;Uid=sa;Pwd=sa";

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

bind();

}

}

public void bind()

{

string sqlstr = "select top 5 * from 飞狐工作室";

sqlcon = new SqlConnection(strCon);

SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

DataSet myds = new DataSet();

sqlcon.Open();

myda.Fill(myds, "飞狐工作室");

GridView1.DataSource = myds;

GridView1.DataKeyNames = new string[] { "身份证号码" };

GridView1.DataBind();

sqlcon.Close();

}

protected void Button1_Click(object sender, EventArgs e)

{

Export("application/ms-excel", "学生成绩报表.xls");

}

private void Export(string FileType, string FileName)

{

Response.Charset = "GB2312";

Response.ContentEncoding = System.Text.Encoding.UTF7;

Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());

Response.ContentType = FileType;

this.EnableViewState = false;

StringWriter tw = new StringWriter();

HtmlTextWriter hw = new HtmlTextWriter(tw);

GridView1.RenderControl(hw);

Response.Write(tw.ToString());

Response.End();

}

public override void VerifyRenderingInServerForm(Control control)

{

}

}

前台:

<asp:GridView ID="GridView1" runat="server"    AutoGenerateColumns="False" CellPadding="3"

BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" Font-Size="12px"   >

<FooterStyle BackColor="White" ForeColor="#000066" />

<Columns>

<asp:BoundField DataField="身份证号码" HeaderText="编号" ReadOnly="True" />

<asp:BoundField DataField="姓名" HeaderText="姓名"  />

<asp:BoundField DataField="出生日期" HeaderText="邮政编码"  />

<asp:BoundField DataField="家庭住址" HeaderText="家庭住址"  />

<asp:BoundField DataField="邮政编码" HeaderText="邮政编码" />

<asp:BoundField DataField="起薪" HeaderText="起薪"  />

</Columns>

<RowStyle ForeColor="#000066" />

<SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left"  CssClass="ms-formlabel DataGridFixedHeader"/>

<HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />

</asp:GridView>

<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="导出" />

读取Excel数据的代码:这个很简单的

private DataSet CreateDataSource()

{

string strCon;

strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("excel.xls") + "; Extended Properties=Excel 8.0;";

OleDbConnection olecon = new OleDbConnection(strCon);

OleDbDataAdapter myda = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strCon);

DataSet myds = new DataSet();

myda.Fill(myds);

return myds;

}

protected void Button1_Click(object sender, EventArgs e)

{

GridView1.DataSource = CreateDataSource();

GridView1.DataBind();

}

Asp.net中GridView使用详解(很全,很经典 转来的)的更多相关文章

  1. Asp.net中GridView使用详解(很全,很经典)

    http://blog.csdn.net/hello_world_wusu/article/details/4052844 Asp.net中GridView使用详解 效果图参考:http://hi.b ...

  2. Asp.net中GridView使用详解(引)【转】

    Asp.net中GridView使用详解(引) GridView无代码分页排序 GridView选中,编辑,取消,删除 GridView正反双向排序 GridView和下拉菜单DropDownList ...

  3. Asp.net中GridView使用详解(引)

    GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合鼠标移到Gr ...

  4. GridView内容详解(转载)

    GridView内容详解(转载) GridView是ASP.NET界面开发中的一个重要的控件,对GridView使用的熟练程度直接影响软件开发的进度及功能的实现.(车延禄)GridView的主要新特性 ...

  5. HTTP协议详解(真的很经典)(转载)

    HTTP协议详解(真的很经典):http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html 引言 HTTP是一个属于应用层的面向对象的协 ...

  6. 【转载】C/C++中extern关键字详解

    1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义.此外extern也可用来进行链接指定. 也就是说extern ...

  7. oracle中imp命令详解 .

    转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...

  8. Android中mesure过程详解

    我们在编写layout的xml文件时会碰到layout_width和layout_height两个属性,对于这两个属性我们有三种选择:赋值成具体的数值,match_parent或者wrap_conte ...

  9. (转)javascript中event对象详解

    原文:http://jiajiale.iteye.com/blog/195906 javascript中event对象详解          博客分类: javaScript JavaScriptCS ...

随机推荐

  1. .net DLL 注册 regasm delphi调用

    .net DLL 注册 regasm regasm regasm myTest.dll regasm.exe 打开vs2005自带的工具“Visual Studio 2005命令提示”,输入上述命令 ...

  2. delphi treeview checkbox

    delphi treeview checkbox 最新版Berlin还没有带checkbox的treeview?

  3. 机器学习进阶-目标追踪-SSD多进程执行 1.cv2.dnn.readnetFromCaffe(用于读取已经训练好的caffe模型) 2.delib.correlation_tracker(生成追踪器) 5.cv2.writer(将图片写入视频中) 6.cv2.dnn.blobFromImage(图片归一化) 10.multiprocessing.process(生成进程)

    1. cv2.dnn.readNetFromCaffe(prototxt, model)  用于进行SSD网络的caffe框架的加载 参数说明:prototxt表示caffe网络的结构文本,model ...

  4. 采用EntityFramework.Extended 对EF进行扩展

    今天我们来讲讲EntityFramework.Extended 首先科普一下这个EntityFramework.Extended是什么,如下: 这是一个对Entity Framework进行扩展的类库 ...

  5. sublime text3:快捷键

    1.就近选择相同项:ctrl+d,按住ctrl,然后多次按d,就不断往下选择相同项 2.选择所有匹配项:alt+f3,一次性选中所有匹配项 3.ctrl+shift+a:在html中同时按这三个键,则 ...

  6. Unity3D初学之2D动画制

    作者:Alex Rose Unity最近宣布推出额外的2D游戏支持,添加了Box 2D物理和一个精灵管理器. 但这里还是有些技巧需要牢记在心.逐帧更改图像只是动画制作的冰山一角,若要让你的游戏出色运行 ...

  7. 吴裕雄 python 机器学习-KNN(2)

    import matplotlib import numpy as np import matplotlib.pyplot as plt from matplotlib.patches import ...

  8. ASP.NET 分页+组合查询 练习

    分页和组合查询都是通过拼接SQL语句到数据库查询进行实现 到汽车表(car)中查询 ,汽车表选取了“编号 code”,“车名 name”,“日期 time”,“油耗 oil ”,“马力 powers” ...

  9. Linux 安装nginx 及配置

    安装openssl库   # yum install -y openssl openssl-devel 安装gcc     # yum install gcc-c++ 安装 PCRE    # yum ...

  10. gdb 常用调试命令

    1.   file    quit 2.   frame bt 3.   finish 运行程序,直到当前函数完成返回,并打印函数返回时的堆栈地址和返回值及参数信息. until 当要退出在一个循环体 ...