gridview 72般绝技

GridView无代码分页排序

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

GridView正反双向排序

GridView和下拉菜单DropDownList结合

GridView和CheckBox结合

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

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

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

GridView实现自动编号

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

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

GridView一般换行与强制换行

GridView显示隐藏某一列

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

GridView固定表头(不用javascript只用CSS,2行代码,很好用)

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

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

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

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

1.GridView无代码分页排序:

效果图:

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

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

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

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

效果图:

后台代码:

你可以使用sqlhelper,本文没用。代码如下:

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

{

//清清月儿https://www.360docs.net/doc/e410339156.html,/21aspnet

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

}

}

前台主要代码:

... ...

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

OnRowUpdating="GridView1_RowUpdating"

OnRowCancelingEdit="GridView1_RowCancelingEdit">

3.GridView正反双向排序:

效果图:点姓名各2次的排序,点其他也一样可以。

后台代码:

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

{

//清清月儿的博客https://www.360docs.net/doc/e410339156.html,/21aspnet

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

}

}

前台主要代码:

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

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

}

前台主要代码:

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

5.GridView和CheckBox结合:

效果图:

后台代码:

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

{

//清清月儿https://www.360docs.net/doc/e410339156.html,/21aspnet

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

}

}

前台主要代码:

CellPadding="3" Font-Size="9pt" BackColor="White" BorderColor="#CCCCCC"

BorderStyle="None" BorderWidth="1px">

Text="全选" />

OnClick="Button1_Click" />

OnClick="Button2_Click" />

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

做法:

双击GridView的OnRowDataBound事件;

在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) {

int i;

//执行循环,保证每条数据都可以更新

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

{

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

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

}

}

}

前台代码:

实现鼠标划过改变GridView的行背景色清清月儿</p><p>https://www.360docs.net/doc/e410339156.html,/21aspnet

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

ConnectionString="<%$ ConnectionStrings:北风贸易ConnectionString1 %>" SelectCommand="Select top 5 [身份证号码], [姓名], [员工性别], [家庭住址], [邮政编码] FROM [飞狐工作室]" DataSourceMode="DataReader">

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

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

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) {

//int i;

////执行循环,保证每条数据都可以更新

//for (i = 0; i < GridView1.Rows.Count; i++)

//{

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

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

// }

//}

//如果是绑定数据行

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) {

//如果是绑定数据行//清清月儿https://www.360docs.net/doc/e410339156.html,/21aspnet

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

{

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

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

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

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

////当有编辑列时,避免出错,要加的RowState判断

//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 + "\"吗?')");

//}

}

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

{

int id = e.Row.RowIndex + 1;

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

}

}

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

OnRowEditing="GridView1_RowEditing"

OnRowUpdating="GridView1_RowUpdating"

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

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

效果图:

图1-未格式化前

图2-格式化后

解决方法:

在https://www.360docs.net/doc/e410339156.html, 2.0中,如果要在绑定列中显示比如日期格式等,如果用下面的方法是显示不了

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

效果图:

图1-未格式化前

完整的项目总结报告

完整的项目总结报告 篇一:建筑工程竣工总结报告全 石家庄通用航空产业制造基地 533号试飞检测综合厂房工程 竣 工 报 告 河北科工建筑工程有限公司 年月日 533号试飞检测综合厂房工程 竣工报告 尊敬的各位领导、专家: 你们好!由我单位承建的533号试飞检测综合厂房工程自从XX年4月10日开工以来,经过三年多的精心施工,在质监站、设计、勘察、建设、监理单位的细心指导和帮助下现已完成了该工程,现我代表施工单位就工程的施工情况,向各位领导和验收专家组作简要汇报: 1.工程概况 总体概况 533号试飞检测综合厂房工程位于石家庄市东南部栾城县城西北新厂区内,主体结构钢筋混凝土结构,南附楼层数

为二层,北附楼层数为一层。建筑面积为 6295 m。 建设单位:石家庄飞机工业有限责任公司 质监单位:栾城县建设工程质量监督站 设计单位:中国航空工业规划设计研究院 勘察单位:勘察设计院 监理单位:河北冀通工程建设监理有限公司 施工单位:河北科工建筑工程有限公司 建筑结构设计概况 结构概况 本工程为钢筋混凝土结构,基础采用独立混凝土基础,基础垫层为100厚C15素混凝土,主体结构为C30混凝土,砌体采用MU10页岩多孔砖,水泥砂浆砌筑。 2 2.工程施工情况 本工程从XX年4月 10日开工,XX年6月5日基础完成,并于6月8日通过地基与基础分部工程验收,核定等级合格。于XX年5月5日主体封项,并经业主、设计、质监、监理、施工等单位于11月30共同 验收,核定主体分部工程为合格,通过项目部全体职工的精心施工,工程于XX年11月30日顺利竣工,并于12月20日经业主、监理、施工等单位进行竣工初验。 该工程自开工以来项目部全体以严谨的工作态度,精心组织施工,按设计文件和现行的标准、规范来约束自己的

GridView使用总结

GridView控件用来在表中显示数据源的值。每列表示一个字段,而每行表示一条记录。GridView控件支持下面的功能: ?绑定至数据源控件,如SqlDataSource。 ?内置排序功能 ?内置更新与删除功能 ?内置分页功能 ?内置行选择功能 ?以编程方式访问GridView对象模型以动态设置属性、处理事件等。 ?多个键字段。 ?用于超链接列的多个数据字段。 ?可以通过主题和样式进行自定义外观。 GridView控件中的每一列由一个DataControlField对象表示。 默认情况下,AutoGenerateColumns属性被设置为true,表示为数据源中的每个字段自动创建绑定字段,自动生成的绑定列字段不会添加到Columns集合中。 通过将AutoGenerateColumns属性设置为false,然后创建自定义的Columns集合,您可以手动定义列字段,而不是让GridView控件自动生成列字段。除了绑定列字段外,您还可以显示按钮列字段、复选框列字段、命令字段、超链接列字段、图像字段或基于您自己的自定义模板的列字段。 下表列出了可以使用的不同列字段类型。

自定义用户界面 您可以通过设置GridView控件的不同部分的样式属性自定义该控件的外观。下表列出了不同的样式属性。 也可以显示或隐藏控件的不同部分。下表列出控制显示或隐藏哪些部分的属性。 事件

GridView控件提供多个您可以对其进行编程的事件。这使您可以在每次发生事件时都运行一个自定义例程。下表列出了GridView控件支持的事件。 事件说明 PageIndexChanged在单击某一页导航按钮时,但在GridView控件处理分页操作之后发生。此 事件通常用于以下情形:在用户定位到该控件中的另一页之后,您需要执行 某项任务。 从10个按钮里面随便选择一个的情况 PageIndexChanging在单击某一页导航按钮时,但在GridView控件处理分页操作之前发生。此 事件通常用于取消分页操作。 RowCancelingEdit在单击某一行的??取消”按钮时,但在GridView控件退出编辑模式之前发 生。此事件通常用于停止取消操作。 RowCommand当单击GridView控件中的按钮时发生。此事件通常用于在控件中单击按钮 时执行某项任务。 RowCreated当在GridView控件中创建新行时发生。此事件通常用于在创建行时修改行 的内容。 RowDataBound在GridView控件中将数据行绑定到数据时发生。此事件通常用于在行绑定 到数据时修改行的内容。 RowDeleted在单击某一行的“删除”按钮时,但在GridView控件从数据源中删除相应记 录之后发生。此事件通常用于检查删除操作的结果。 RowDeleting在单击某一行的“删除”按钮时,但在GridView控件从数据源中删除相应记 录之前发生。此事件通常用于取消删除操作。 RowEditing发生在单击某一行的“编辑”按钮以后,GridView控件进入编辑模式之前。 此事件通常用于取消编辑操作。 RowUpdated发生在单击某一行的“更新”按钮,并且GridView控件对该行进行更新之后。 此事件通常用于检查更新操作的结果。 RowUpdating发生在单击某一行的“更新”按钮以后,GridView控件对该行进行更新之前。 此事件通常用于取消更新操作。

基于.NET的Web程序设计知识点总结

1.网站中的Global.asax文件(如果有的话)必须放在应用程序的根目录下(T) 2.利用DetailsView控件添加记录特别方便,因为不需要另外增加输入框(T) https://www.360docs.net/doc/e410339156.html,只是ADO的简单升级(F) 4.数据集(DataSet)能够在断开与数据源连接的情况下工作(T) https://www.360docs.net/doc/e410339156.html,采用的是代码分离模式(T) 6.离开了网站,aspx页面可以单独运行(F) 7.离开了IIS服务器,.htm页面可以单独运行(T) 8.在DetailsView中不能显示符合条件的多条记录(F) 9.Web服务器控件的几个按钮都可以起到向服务器提交数据的作用(T) 10.XML是一种编程语言(F) 1.服务器控件的AutoPostBack属性的含义是选择服务器控件时,是否自动回送。 。 2.要求在某文本框中输入密码,一般要将该TextBox控件的TextMode属性设置为 Password 。 3.Page对象的IsPostBack属性的含义是指示该页是否正为响应客户端回发而加载,或者是否正被首次 加载和访问。如果是响应客户端回发而加载,其值为True,否则为False。 4.Response对象在使用时是通过使用Page对象的Response属性而达到的。 https://www.360docs.net/doc/e410339156.html,中的页面跳转可以通过Response对象的Redirect方法实现。 https://www.360docs.net/doc/e410339156.html,中存储页面间共享的变量可以通过Session对象或Application对象实现。 7.存储过程的英文原词为Stored Procedure。 https://www.360docs.net/doc/e410339156.html,包含的5大对象为Connection,Command,DataReader, DataAdapter,DataSet 。 9.使用SqlConnection对象连接到本地的数据库服务器上的Northwind数据库时,如果使用集成 Windows的身份验证模式,则连接字符串的写法为: SqlConnection conn=new SqlConnection("Data Source=.;Initial Catalog=Northwind;Integrated Security=True ");。 10.下面是设置和取出Session对象的代码。 设置Session的代码是: Session[“greeting”]=”hello wang!”; 取出该Session的对象的语句如下: String greeting=Session["greeting"].ToString(); 11.App_Data目录用来放置() A.共享的数据库文件 B.共享文件 C.被保护的文件 D.代码文件 12.文件系统网站非常适合学习使用,因为() A.不需要安装IIS B.网站允许放置在任意目录下 C.能够进行单独测试 D.A+B 13.下面哪种后缀是静态网页文件() A.asp B.aspx C.htm D.jsp 14.在配置GridView控件的SqlDataSource数据源控件过程中,单击【高级】按钮的目的是()A.打开其他窗口 B.输入新参数C.生成SQL编辑语句 D.优化代码 15.SiteMapDataSource能否用来访问() A.关系型数据 B.层次性数据 C.字符串数据 D.数值型数据

软件项目总结报告

2?开发的反复性比较多。

我们只需要修改GhdGridView 控件的样式,系统中的所有继承自GhdGridView 的表格样式都可以改变。 5.系统开发框架:此系统的框架使用的是简单三层结构,此框架在开发一些中小软件是比较实用的。但是我们要是可以开发出自己的框架,把一些通用的功能开发到框架中。这样以来,在以后的系统开发中,针对系统中一些通用的功能就不需要再开发,从而也可以很好的提高我们的开发效率;减少很多维护费用。使我们的技术不断的更加成熟。 6.系统安全加密:此系统中针对客户提出的系统安全问题,我们采用了Ikey加密硬件钥匙来验证客户端登 陆客户的合法性,此Ikey钥匙可以绑定到一个系统使用用户,也可以让多个用户来使用一个加密钥匙来验证登陆系统的合法性。这样以来,即使用户的密码不慎丢失,或者被不法人员取得(不法人员他也是无法 登陆到我们的系统中来),这样就最大的提高了我们系统的安全性。Ikey加密钥匙是很好的加密B/S架构软 件的硬件工具,在以后的软件安全方面可以借鉴。 3项目经验总结 签定合同 一个项目的开发成败或者说项目开发带来效益的大小,在很大程度上是受项目合同签定的影响的。往往,很多一部分公司与客户签定的项目合同都是很模糊的,也很难签定的比较清楚,这样以来就会导致在项目的开发后期,工作两会越来越大,影响项目的竣工周期;而且,项目的开发费用一般是不会变的。这样以来,我们就大大的降低了我们的开发效益。虽然需求范围很难签定的明确,但是我们在签定合同时,要尽量的去把合同功能边界和添加新功能的条件签定。 开发团队 在项目确立后,要尽快的建立起项目开发团队。 项目团队成员的团结合作、相互沟通是非常重要的,团队成员之间要相互学习彼此的优点和技术,使团队的能力不断的提高。这样,在项目的开发过程中,团队才不会被难题困住不动。另外,团队中要有一个项目负责人,这个人无论是在与客户的沟通上,还是在技术上都要是很出众的人,此项目负责人要能很好的沟通客户与开发成员之间,以此来更好的理解客户的功能需求。人的记忆力总是有限的,所以就要求开发团队成员要尽量的书写一些开发文档,这些文档往往是我们在项目开发后期要用到的可寻资料。项目团队士气是项目成功的一个因素,我们需要不断的来培养我们的团队气势,使我们的团队不断的壮大。需求的调研

DevExpress GridControl使用方法总结

一、如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二、如何新增一条记录 (1)、gridView.AddNewRow() (2)、实现gridView_InitNewRow事件 三、如何解决GridControl记录能获取而没有显示出来的问题gridView.populateColumns(); 四、如何让行只能选择而不能编辑(或编辑某一单元格) (1)、View->OptionsBehavior->EditorShowMode 设置为:Click (2)、View->OptionsBehavior->Editable 设置为:false 五、如何禁用GridControl中单击列弹出右键菜单 设置Run Design->OptionsMenu->EnableColumnMenu 设置为:false 六、如何隐藏GridControl的GroupPanel表头 设置Run Design->OptionsView->ShowGroupPanel 设置为:false 七、如何禁用GridControl中列头的过滤器 过滤器如下图所示: 设置Run Design->OptionsCustomization->AllowFilter 设置为:false 八、如何在查询得到0条记录时显示自定义的字符提示/显示 如图所示:

方法如下: //When no Records Are Being Displayed private void gridView1_CustomDrawEmptyForeground(object sender, CustomDrawEventArgs e) { //方法一(此方法为GridView设置了数据源绑定时,可用) ColumnView columnView = sender as ColumnView; BindingSource bindingSource = this.gridView1.DataSource as BindingSource; if(bindingSource.Count == 0) { string str = "没有查询到你所想要的数据!"; Font f = new Font("宋体", 10, FontStyle.Bold); Rectangle r = new Rectangle(e.Bounds.Top + 5, e.Bounds.Left + 5, e.Bounds.Right - 5, e.Bounds.Height - 5); e.Graphics.DrawString(str, f, Brushes.Black, r); } //方法二(此方法为GridView没有设置数据源绑定时,使用,一般使用此种方法) if (this._flag) { if (this.gridView1.RowCount == 0) { string str = "没有查询到你所想要的数据!"; Font f = new Font("宋体", 10, FontStyle.Bold); Rectangle r = new Rectangle(e.Bounds.Left + 5, e.Bounds.Top + 5, e.Bounds.Width - 5, e.Bounds.Height - 5); e.Graphics.DrawString(str, f, Brushes.Black, r); } } }

DevExpress控件的GridControl控件小结

目录 1. DevExpress控件组中的GridControl控件不能使横向滚动条有效。 (2) 2. 使单元格不可编辑。 (2) 3. 没有下拉滚动条事件怎么办? (2) 4. 获取选定行,指定列单元格的内容 (2) 5. 去除"Drag a Column Header Here To Group by that Column" (3) 6. 在gridcontrol中添加checkbox复选框 (3) 7. 单元格合并问题 (4) 8. gridView 奇行与偶行交替变色 (4) 9. girdView在第一列显示行号 (4) 10. 选中某列进行排序时,如何让该列高亮显示 (5) 11. XtraGrid冻结列 (5)

(由于开始使用DevExpress控件了,所以要点滴的记录一下) 1.DevExpress控件组中的GridControl控件不能使横向滚动条有效。 现象:控件中的好多列都挤在一起,列宽都变的很小,根本无法正常浏览控件单元格中的内容。 解决: gridView1.OptionsView.ColumnAutoWidth属性是true,即各列的宽度自动调整,你把它设成false,就会出现了。 2.使单元格不可编辑。 gridcontrol -->gridview -->OptionsBehavior -->Editable=false 3.没有下拉滚动条事件怎么办? 现象:因为需要加载大数据量数据,所以不能一次把所有数据读入datatable进行绑定,所以决定在用户进一步浏览数据时进行数据的实时加载工作,就是每当用户拉动滚动条时,多加载一些数据进入datatable.没有找到合适的滚动条事件,于是用这个事件代替了,非常合适我的需求. TopRowChanged事件. 4.获取选定行,指定列单元格的内容 private string GetSelectOID() { int[] pRows = this.gridView1.GetSelectedRows(); if (pRows.GetLength(0) > 0) return gridView1.GetRowCellValue(pRows[0], mOIDFiledName).ToString (); else return null; } //mOIDFiledName为要获取列的列名

安卓应用总结

安卓应用总结 一、Activity类 1、生命周期 Android 定义了一系列与生命周期相关的方法,在我们自己的Activity 中,只是根据需要复写需要的方法,Java 的多态性会保证我们自己的方法被虚拟机调用(即回调方法)。 p ublic class OurActivity extends Activity { protected void onCreate(Bundle savedInstanceState); setContentView(https://www.360docs.net/doc/e410339156.html,yout.main); //设置界面布局 protected void onStart(); //启动 protected void onResume(); //进入界面之前 protected void onPause(); protected void onStop(); protected void onDestroy(); } onCreate==> onS tart() ==> onResume() ==> running ==> onPause() ==> onStop() ==> onDestroy() 注:在这些生命周期方法中必须调用父类的该方法 2、启动另外一个Activity Activity.startActivity()方法可以根据传入的参数启动另外一个Activity: I ntent intent =new Intent(CurrentActivity.this,OtherActivity.class); startActivity(intent); 注:OtherActivity同样需要在AndroidManifest.xml中定义 3、Activity之间通信 在Android 中,不同的Activity 实例可能运行在一个进程中,也可能运行在不同的进程中。 因此我们需要一种特别的机制帮助我们在Activity 之间传递消息。Android 中通过Intent 对象来表示一条消息,一个Intent 对象不仅包含有这个消息的目的地,还可以包含消息的内容,这好比一封Email,其中不仅应该包含收件地址,还可以包含具体的内容。对于一个Intent 对象,消息“目的地”是必须的,而内容则是可选项。 Intent的中文意思是目的。在Android中也是"目的"的意思。就是我们要去哪里,从这个activity 要前往另一个Activity就需要用到Intent。 发件人:(CurrentActivity类中) Intent intent =new Intent(CurrentActivity.this,OtherActivity.class); // 创建一个带“收件人地址”的 email Bundle bundle =new Bundle();// 创建 email 内容 bundle.putBoolean("boolean_key", true);// 编写内容 bundle.putString("string_key", "string_value"); intent.putExtra("key", bundle);// 封装 email startActivity(intent);// 启动新的 Activity 收件人:(OtherActivity类中) Intent intent =getIntent();// 收取 email

项目总结报告范文

项目总结报告范文(一) 时间过得真快,转眼间,在山大实习生活就结束了 四周的时间能够和山大的同学一起工作、学习、生活我感到非常的荣幸,同时也感觉到很大的压力,作为电子商务专业的学生从事软件开发感觉还是有一定的困难,特别是我们还是和山大大三的学生一起,在初来时自己就有一些不自信,但随着项目的进展,我慢慢的找到了自己的位置,找到自己的目标,虽然自己与好的同学还有差距,这也给了我很大压力,但是我相信没有压力就没有动力,所以整个实训过程中我都在不断地努力。 实训期间让我学到很多东西,不仅在理论上让我对it领域有了全新的认识,在实践能力上也得到了很大的提高,真正的学到了学以致用,更学到很多做人的道理,对我来说受益匪浅。特别是利用周六上午的时间山大为我们安排的讲座让我们了解it领域一些新的发展动态以及一些领先的技术,让我意识到自己知识的缺少,这激励我在以后的学习、工作、生活中要不断了解信息技术发展动态以及信息发展中出现的新的技术。 除此之外,我还学到了如何与人相处,如何和人跟好的交流,我们组成一个团队大家一起开发一个项目,大家的交流沟通显得尤为重要,如何将自己的想法清楚明白的告诉队友,如何提出自己想法的同时又不伤害其他的队友的面子,这些在我的实训生活中都有一些体会。可是说,第一次亲身体会理论与实际相结合,让我大开眼界。也是对以前学习的一个初审吧,相信这次实训多我以后的学习、工作也将会有很很大的影响,在短短的二十几天里这些宝贵的经验将会成为我以后工作的基石。作为大二的学生,经过两年的在校学习,对程序设计有了一些基本的理性的认识和理解。在校期间一直忙于理论的学习,没有机会也没有经验来参与我们项目的开发,所以在实习之前软件按开发对我来说是非常抽象的,一个完整的项目要怎么来分工以及完成该项目所需要的基本步骤也不明确,经过这次实训让我明白一个完整项目的完成必须团队分工合作,并在每个阶段进行必要的总结和检查。在我们项目的开发过程中我们项目的步骤:详细设计、详细设计review、编码、编码review、单体测试。在项目开发过程中我也深刻的体会到详细设计对一个项目开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。经过二十多天的obbligato信息安全管理的java开发,是我对java软件开发平台有了更深一步的了解,也对nec公司的obbligato平台有了一定的了解。 这次实训是对我们两年学习的一个检验,虽然项目中很多知识我们在日常的学习中都没有遇到,这同时提醒我:要想成为一个合格的程序员就有具备一种自学能力,在工作中会遇到很多从未接触过的问题,当有了问题时要去解决,在你不断努力,寻找答案的过程中,自己的能力也在潜移默化的提升。有时遇到问题时可能有很多想法但却不知道那个正确,这就让我们不断地去探索,不断地尝试。这次实训也让我深刻的了解到,不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要先做人,要明白做人的道理,如何与人相处是现代社会的做认得一个最基本的问题,对已自己这样一个即将步入社会的人来说,需要学习的东西很多。从一起做项目的同学身上我看到了谦虚谨慎、细心努力的态度,在以后我的生活中我还会留意身边同学的优点,从他们身上找寻我所缺少的品质,不断学习。从老师那里我看到了企业人的生活面貌,没有事情可以不劳而获,今天老师们能够领导我们是他们之前努力的结果,虽然老师没有和我们讲很多公司里的事情,可是他们的言行中所表现出来的都是比我们要严谨的多的对工作的态度。 在此次的实训中我感觉到我们最大的不足就是动手的能力太差,在项目组中山大的同学也给我提出一些建议,让我有机会自己多动手,不是我们缺乏知识,而是我们没有运用知识的能力,在二十多天的项目开发过程中,我自己也认识到虽然我们的理论知识没有山大同学那么全面,但是如果在学校认真学习了,我们的理论知识并不比他们差,所以以后的日子,如果

软件项目总结报告_1

软件项目总结报告 1引言 编写目的 XXX公司业务管理系统的开发已经基本完成。写此项目开发总结报告,以方便我们在以后的项目开发中来更好的实施项目的订制开发; 让我在今后的项目开发中有更多的有据的资料来规范我们的开发过程和提高我们的开发效率,从而创造更多公司效益。 背景 项目名称:XXX业务管理系统 软件名称:XXX业务系统 客户:XXX 用户:XXX员工 参考资料 项目开发文档: 1.软件开发数据模型:PDM_ 2.数据库开发文档: XXX业务管理系统数据库设计说明书 3.软件业务流程参考:XXX业务管理系统流程说明.doc 4.软件使用手册参考:XXX业务管理系统功能说明 5.软件业务流程参考:XXX业务管理系统流程说明.doc 6.软件中使用到的第三方控件:ComponentArt for

7.软件中使用的安全Ikey驱动:Ikey 以上参考资料是截止XX-08-31是最新的资料文档。如有修改,即使修改此处的参考文档名称。 2开发工作评价 对生产效率的评价 1.系统开发已历时快1年的时间了 2.开发的反复性比较多。 3.对客户的需求理解不是很透彻。 综合以上,此项目的开发效率不是很高,相反有相当一定时间的浪费。 对产品功能的评价 经过我们公司各位同事的共同努力协作,XXX业务管理系统已经很好的完成了客户的业务流需求。经过对客户使用过程的观察,此项目开发的还是比较成功,但是还是存在着一些问题,造成这些问题的原因是多方面的。如:前期系统数据库的设计缺陷和部分代码的构建缺陷、客户需求的理解上也存在一定问题,这就需要我们用一定的时间来维护客户使用过程中提出的新问题和存在的debug。总的来说,此系统的功能开发还是一个比较成功的案例。 对技术方法的总结 在此项目中使用到技术和工具: 1.使用代码生成器:使用代码生成器 ,此工具在很

GridView编辑删除总结

第一种:使用DataSource数据源中自带的编辑删除方法,这种不常用,在这里就不加 说明了。 第二种:使用 GridView的三种事件:GridView1_RowEditing(编辑)、GridView1_RowUpdating(更新)、GridView1_RowCancelingEdit(取消编辑)。GridView1属性中将DataKeyNames 的值设置为主键名,否则找不到索引,这个很重要哦。 该方法有2种操作,一种是不对绑定列转换为模板列,另外一种是转换为模板列。 这里先说不转换为模板列的情况; 首先;先对GridView进行数据绑定,不管用代码绑定还是DataSource绑定都可以。绑定好后, 对GridView添加绑定列和编辑列(注意这里,添 加好后不做任何改动,千万不要将它们转换为模板列),添加好后,将所要绑定的数据库表字段填入 属性中。 然后,分别激活上述提到的三种事件,然后添加代码: { //执行删除 string str = "delete from tb_hby where id='"+GridView1.DataKeys[e.RowIndex].Value.ToString()+"'"; db.Delete(str); //db是操作类的实例,Delete是删除数据的方法 this.GridView1.DataBind(); } {//执行更新 string cell1 = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim();//第 一列注意这种写法很重要 string cell2 = ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim();//第 二列注意这种写法很重要 string str = "update tb_hby set hby_title='"+ cell1 + "',hby_Datetime='"+ cell2 + "' where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'"; db.Update(str);//db是操作类的实例,Update是更新数据的方法 GridView1.EditIndex = -1; GView(); } {//激活编辑按钮的事件 this.GridView1.EditIndex = e.NewEditIndex; GView(); }

软件开发项目总结

软件开发项目总结 1.系统开发已历时快1年的时间了 2.开发的反复性比较多。 3.对客户的需求理解不是很透彻。 综合以上,此项目的开发效率不是很高,相反有相当一定时间的浪费。 2.2对产品功能的评价 经过我们公司各位同事的共同努力协作,XXX业务管理系统已经很好的完成了客户的业务流需求。经过对客户使用过程的观察,此项目开发的还是比较成功,但是还是存在着一些问题,造成这些问题的原因是多方面的。如:前期系统数据库的设计缺陷和部分代码的构建缺陷、客户需求的理解上也存在一定问题,这就需要我们用一定的时间来维护客户使用过程中提出的新问题和存在的debug。总的来说,此系统的功能开发还是一个比较成功的案例。 2.3对技术方法的总结 在此项目中使用到技术和工具: 1.使用代码生成器:使用代码生成器 [动软.Net代码自动生成器],此工具在很大程度上提高了编码效率,从而加快了项目的开发进程。在以后的项目中,我们要尽量的来使用一些类似的工具来在最短的时间内完成工作。在今后的项目开发中,我们最好是能开发出适合自己的代码生成工具,更大限度的节省开发周期和开发费用。

2.使用数据库建模工具;PowerDesigner 工具来建立系统数据库模型,以方便程序员很好的理解业务流和掌握系统架构者的架构思想,更好的满足客户的功能需求。在今后的项目开发中,我们要更好的来完成系统的前期数据库模型的建立,最大的来优化系统功能。 3.使用第三方控件:此系统中使用了ComponentArt Web.UI 第三方控件。此控件在很大程度上满足了客户对软件界面的需求,从而也给软件的操作带来了方便。本项目中只使用了ComponentArt Web.UI一种第三方控件,在今后的项目开发过程中,要继续使用第 三方的控件。这样以来,无论是针对软件界面的美观性、友好性来说、易操作性而言,还是针对系统开发效率而言,这都是很好途径。但需要意的是:在是使用第三方控件时,要谨慎的选择一些网络中的比较常见的第三方控件。 4.使用自定义控件:此系统中使用了自定义控件(GhdGridView),此自定义控件可以很好的统一系统中的所有信息显 示表格样式。如客户对数据显示样式有什么新的意见,我就不需要修改每一个页面的表格样式,我们只需要修改GhdGridView控件的样式,系统中的所有继承自GhdGridView的表格样式都可以改变。 5.系统开发框架:此系统的框架使用的是简单三层结构,此框架在开发一些中小软件是比较实用的。但是我们要是可以开发出自己的框架,把一些通用的功能开发到框架中。这样以来,在以后的系统开发中,针对系统中一些通用的功能就不需要再开发,从而也可以很

Dev控件使用

1TreeList控件 1.1设置TreeList控件外观样式显隐 在TreeList控件属性OptionsView中设置,可设置标题列、左侧边表格框、表格线等显隐 1.2新增节点后,节点选中 https://www.360docs.net/doc/e410339156.html,.BeginUnboundLoad(); 02. TreeListNode node = tv.AppendNode(null, tv.FocusedNode); 03. node[colVC_FENLEI_ID] = item.VC_FENLEI_ID;

04. node[colVC_FENLEI_NAME] = item.VC_FENLEI_NAME; 05. node[colVC_PINYIN_CODE] = item.VC_PINYIN_CODE; 06. node[colVC_SHANGJI_ID] = item.VC_SHANGJI_ID; 07. node[colVC_TAOSHU_ID] = item.VC_TAOSHU_ID; 08. node[colN_JIBIE_CODE] = item.N_JIBIE_CODE; 09. if (!string.IsNullOrEmpty(item.VC_YOUXIAO_FLAG)) 10. { 11. node[colVC_YOUXIAO_FLAG] = Convert.ToInt32(item.VC_YOUXIAO_FLAG); 12. } 13. 14. tv.EndUnboundLoad(); 15. tv.SetFocusedNode(node); 16. FocusedNodeChangedEventArgs args = new FocusedNodeChangedEventArgs(null, tv.FocusedNode); 17. tv_FocusedNodeChanged(tv, args); 上面代码是设置下级节点,同级的使用选中节点的父级节点作为父节点,没有就是null,不过如果没有父级节点,将导致新增后无法选中,目前没有找到解 决办法。 2GridControl 2.1GridView视图 2.1.1禁用GridControl中单击单元格弹出右键菜单 ContextMenu emptyMenu = new ContextMenu(); ///

///去除单元格选中后出现的系统右键菜单 ///

.net实验报告总结

竭诚为您提供优质文档/双击可除 .net实验报告总结 篇一:。net实验报告 实验一环境配置与sql操作 学号:1020xxx姓名:xxx日期:20XX/12/2 1、实验目的: 熟悉Vs20XX开发环境,复习c#和sQL2000相关操作 2、实验环境: windowsxp、Vs20005、sQLserver2000 3、实验内容: (1)调试课本1.3节创建第一个https://www.360docs.net/doc/e410339156.html,2.0应用程序(2)利用控制台程序复习c#中选择结构、循环结构、类和对象的相关内容 (3)利用Vs20XX分别创建wAp、智能设备和桌面应用程序 (4)复习sQL2000的相关操作 4、实验过程: (1)创建第一个https://www.360docs.net/doc/e410339156.html,2.0应用程序

(2)循环结构 (3)选择结构 5、实验总结: 通过本次实验的练习,对https://www.360docs.net/doc/e410339156.html,2.0程序的创建以及调试运行有了进一步的掌握,对选择结构,循环结构得到重新复习,以及sql语句的编写运用更加灵活。 实验二控件 学号:1020xxx姓名:xxx日期:20XX/12/2 1、实验目的: 熟悉https://www.360docs.net/doc/e410339156.html,服务器端控件的操作方法,理解各种控件的适用场合 2、实验环境: windowsxp、Vs20005、sQLserver2000 3、实验内容: 设计一个采集人员基本信息的界面。 (1)利用文本框采集姓名 (2)利用日期控件采集生日 (3)利用二级下拉列表采集籍贯 (4)利用复选框采集爱好 (5)利用单选钮采集性别,在提取数据前用适当的验证控件检查数据有效性 (6)显示采集的信息

(7)利用类存储这些信息 (8)可以根据自己的想法添加一些其它信息和控件 4、实验过程: 5、实验总结: 通过实验练习,实现了二级下拉菜单,日期控件的使用,对各种控件的属性以及用法掌握跟透彻,灵活。 实验三数据绑定 学号:1020xxx姓名:xxx日期:20XX/12/2 1、实验目的: 掌握https://www.360docs.net/doc/e410339156.html,中数据绑定的相关操作,能够利用代码和控件完成数据的浏览、查询、增加、删除、修改等基本功能。 2、实验环境: windowsxp、Vs20005、sQLserver2000 3、实验内容: ⑴建立sQLserver数据库和Access连接 ⑵ ⑶ ⑷ ⑸使用sqlcommand、oleDbcommand和存储过程操作数据使用DataReader读取数据利用Dataset操作数据制作省、市两级联动列表

项目年度工作总结报告模板(完美版)

项目年度工作总结报告 1.1编写目的 XXX公司业务管理系统的开发已经基本完成。写此项目开发总结报告,以方便我们在以后的项目开发中来更好的实施项目的订制开发; 让我在今后的项目开发中有更多的有据的资料来规范我们的开发过程和提高我们的开发效率,从而创造更多公司效益。 1.2背景 项目名称:XXX业务管理系统 软件名称:XXX业务系统 客户:XXX 用户:XXX员工 1.3参考资料 项目开发文档: 1.软件开发数据模型:PDM_OperationSystem20xx0831.pdm 2.数据库开发文档:XXX业务管理系统数据库设计说明书2.0.doc 3.软件业务流程参考:XXX业务管理系统流程说明.doc 4.软件使用手册参考:XXX业务管理系统功能说明3.0.doc 5.软件业务流程参考:XXX业务管理系统流程说明.doc 6.软件中使用到的第三方控件:ComponentArt Web.UI 20xx.1252 for https://www.360docs.net/doc/e410339156.html,2.0.rar

7.软件中使用的安全Ikey驱动:Ikey Driver.rar 以上参考资料是截止20xx-08-31是最新的资料文档。如有修改,即使修改此处的参考文档名称。 2开发工作评价 2.1对生产效率的评价 1.系统开发已历时快1年的时间了 2.开发的反复性比较多。 3.对客户的需求理解不是很透彻。 综合以上,此项目的开发效率不是很高,相反有相当一定时间的浪费。 2.2对产品功能的评价 经过我们公司各位同事的共同努力协作,XXX业务管理系统已经很好的完成了客户的业务流需求。经过对客户使用过程的观察,此项目开发的还是比较成功,但是还是存在着一些问题,造成这些问题的原因是多方面的。如:前期系统数据库的设计缺陷和部分代码的构建缺陷、客户需求的理解上也存在一定问题,这就需要我们用一定的时间来维护客户使用过程中提出的新问题和存在的debug。总的来说,此系统的功能开发还是一个比较成功的案例。 2.3对技术方法的总结 在此项目中使用到技术和工具: 1.使用代码生成器:使用代码生成器[动软.Net代码自动生成器],此工具在很大程度上提高了编码效率,从而加快了项目的开发

江湖铁口断命诀

第四谈江湖铁口断命决(独步中原) 注:“金不换断“,主要论的是生月的地支,因为在论八字格局时,是以月支来定的,月支中所藏的天干有旺,有衰,有的透出,有的却不透,这都是定格的依据。用神的取用,也与月支有直接的关系。 年上正财祖业强,年下正财借祖光。支为偏财支出大,色情之灾需要防。 支为正官多高尚,祖上能把权来当,年支若要逢七杀,祖上刚强有名望。 年支若要逢正印,妻子对母不贤良。支为偏印不太好,先富后贫祖飘荡。 年支若要逢食神,衣食丰足妻子帮。年支若要逢伤官,虽然富贵也不长。 年支若要逢劫财,祖上家产借不上。年支若要逢比肩,财禄广进弟兄帮。 年支若要逢偏印,以小失大不堪言。年支若要逢偏官,父母恐怕难保全。 年上偏财命中安,日弱克父定不偏,日主建旺财务好,父反高寿有财源, 年月刑冲不算好,父东子西把家搬。日弱运行比劫运,父死异乡有牵连, 年支若逢占正财,祖上必然有家产。年支若要逢正官,祖上有权好命看。 年支若要逢食神,祖上富贵命里添。年支若要逢伤官,祖上受损身体残, 年支若要逢比肩,兄弟多了分财源。年支若要逢劫财,祖上兴旺没几天。 年支若要逢正印,一代一代胜从前。年上正官要占先,祖上有过功名权。 少年之时福气大,全*父母爱周全。支为正官吵太好,官欺民辖合中安, 年支若要正财现,富贵荣华在少年。年支若要逢七杀,恐怕少运有灾难。 年支若要逢正印,官印相生好命看。年支若要逢偏印,自力更生创家园。 年支若要逢羊刃,好事难成不好办。年支若要逢建禄,祖上一代本有权, 年支若要逢食神,祖业兴旺本有钱。年支若要逢伤官,恐怕父母难保全, 年支若要逢偏财,财官相后前程宽。年上七杀逢生旺,祖上威武又刚强, 羊刃会杀方为好,祖上必把官来当。年支若要逢食神,家财大业借祖光。 年支若要逢正印,父母有权在命上。年支若要逢财星,运生财地福禄长。 年支若要逢羊刃,祖上要基不算强。年支若要逢比肩,身弱伤身有外伤, 年支若要逢正官,祖上必然把兵当。年支若要逢偏印,少年父母命夭亡。 年支若要逢七杀,一生身体不算弱。 月上正财不一般,日柱建旺有财源,支为正财逢生旺,一生富贵在命间。 支为偏财能巧得,买卖手艺能挣钱。月支若逢正官格,财官相生能掌权。 若要地支逢七杀,身弱贫困命中安,月支若要逢正印,先财后印好命看。 月支若要逢伤官,聪明伶俐会攒钱。月支若要逢神安,能成富翁不费难。 月支若要逢比肩,兄弟姐妹争家产。正财建禄最为好,全*父母来周全。 月上偏财众人财,意外之财命带来。月支偏财逢身旺,妻妾情人有一排。 地支若要正财见,少年富贵本有财,月支再把正官现,生官发财命里该。 月支再把食神现,父母攒下田和宅。月支再把伤官现,破腹手足有大灾。 月支若要占比肩,独立致富运难开。月支再把劫财见,婚姻恐怕人破坏。 月支若要逢正印,一生保证有依赖,月支若要逢偏印,总想离家去求财。 月支再把偏官现,遇事不顺小人来,正气官星在月中,为人慷慨又聪明, 生来财高见识广,处事总有威望名。支为正财官星旺,财官相生显赫名, 月支若把正官现,一生事业难成功。月支若把食神现,当官不久去埋名。 月支若要逢比肩,创业自力去更生。正官若要逢偏财,手艺买卖会经营, 月支若要逢偏印,多学少成好逞能。

数据绑定控件的用法

第11周 教学目标 通过本周的学习使学生熟练掌握在不使用数据源控件的前提下GridView、DetailsView、FromView、DataList、Repeater和ListView这几种数据绑定控件的用法,能够根据页面操作的要求正确选择有关控件。 教学重点 掌握各种数据绑定控件GridView、DetailsView、FormView、ListView、Repeater、DataList的用法。 教学难点 在不使用数据源控件的情况下使用各种数据绑定控件展示及更新数据。GridView、DetailsView控件的模板列的定制及ListView、Repeater、DataList 控件各种模板的定义。 教学过程 各种数据绑定控件的常用用法: 1、GridView控件是以网格的形式显示多条记录,可实现分页、排序,并可对记 录进行选择、编辑、删除操作。(但不能进行插入) (1) GridView控件提供了多种列类型,默认是BoundField类型,这种类型的列在显示态时是以Label的形式显示数据,在编辑态时用 TextBox来接受用户输入。如果BoundField列不能满足用户要求, 可以使用其他类型的列来绑定数据,或者使用TemplateField列定 制在不同模板下的列的显示情况。 (2) GridView的模板列主要有以下几种:ItemTemplate、AlternatingItemTemplate、EditItemTemplate、HeaderTemplate、 FooterTemplate。 (3) GridView提供了三种操作的命令按钮列CommandField,分别是“选择”、“编辑”和“删除”,要设置对应的ShowSelectButton、

相关文档
最新文档