小女巫 发表于 2015-1-16 23:10:30

ASP网页编程之DataGrid小技能

写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们)datagrid|技能//增加删除确认对话框:
privatevoidDataGrid1_ItemDataBound()

{
switch(e.Item.ItemType)
{
caseListItemType.Item:
caseListItemType.AlternatingItem:
caseListItemType.EditItem:
ImageButtonbtn=(ImageButton)e.Item.FindControl("btnDelete");
btn.Attributes.Add("onclick","returnconfirm(你是不是断定删除这笔记录?);");
break;

}
}
处置操纵:
privatevoidDataGrid1_ItemCommand()
{
stringc=e.CommandName;
intPermissionsID=(int)this.DataGrid1.DataKeys;//DataKeyField值
switch(c)
{
case"Delete":
//实行删除操纵
break;

}

}

另有个好办法:
datagrid-》属性天生器-》列-》增加按钮列-》删除-》文本(T)->在文本框里加上:

<divid="de"onclick="JavaScript:returnconfirm(断定删除吗?)">删除</div>

就能够了/
OK!


//从头取值赋值:

privatevoidDataGrid1_ItemDataBound()
{
if((e.Item.ItemType==ListItemType.Item)||(e.Item.ItemType==ListItemType.AlternatingItem))
{
//e.Item代表一行

stringImgUrl=(string)DataBinder.Eval(e.Item.DataItem,"ImageUrl");
//注重这一行,"ImageUrl"字段是甚么范例后面就转成甚么范例,不然报错

//e.Item.Cells.Style.Add("font-weight","bold");
//e.Item.Cells.ForeColor=System.Drawing.Color.Red;
//e.Item.BackColor=System.Drawing.Color.AliceBlue;


strings=e.Item.DataItem.ToString();
stringss=e.Item.Cells.Text;
intsss=e.Item.Cells.Count;

}
}


//绑定是从头盘算页数与以后页

publicvoiddataShowBind(DataSetds)
{
this.DataGrid1.DataSource=ds;
if(ds.Tables.Count>0)
{
introwscount=ds.Tables.Rows.Count;
doublep=double.Parse(rowscount.ToString())/5.0;
//注重:只要double/double了局才是double,int/int=int;

intnewPageCount=int.Parse(Math.Ceiling(p).ToString());

if(this.DataGrid1.CurrentPageIndex>newPageCount-1)
{
this.DataGrid1.CurrentPageIndex--;
}

this.DataGrid1.DataBind();
}


}

列中的控件的事务起首反升到DataGrid1_ItemCommand事务,但要判别CommandName
privatevoidTopicsGrid_ItemCommand(e)
{
stringbtn=e.CommandName;
inti=0;
switch(btn)
{
case"edit":
i=(int)this.TopicsGrid.DataKeys;
break;
case"delete":
i=(int)this.TopicsGrid.DataKeys;

break;
}
}


点击链接列弹出窗口

<Columns>
<asp:TemplateColumn>
<ItemTemplate>

<ahref="javascript:varaa=window.open(<%#"Form2.aspx?id="+DataBinder.Eval(Container.DataItem,"持股称号")%>,,width=310,height=280,top=160,left=350);aa.focus();">
<%#DataBinder.Eval(Container.DataItem,"持股称号")%>
</a>

</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</p>优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件

若相依 发表于 2015-1-18 19:35:17

ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。

精灵巫婆 发表于 2015-1-20 15:55:23

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

若天明 发表于 2015-1-26 09:28:40

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。

第二个灵魂 发表于 2015-1-26 20:27:45

不能只是将它停留在纸上谈兵的程度上。

仓酷云 发表于 2015-1-28 11:20:24

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。

因胸联盟 发表于 2015-2-5 14:31:44

你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。

灵魂腐蚀 发表于 2015-2-12 04:34:06

作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。

乐观 发表于 2015-3-2 22:18:00

用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。

飘飘悠悠 发表于 2015-3-11 06:59:04

跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组

透明 发表于 2015-3-17 23:07:49

最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。

金色的骷髅 发表于 2015-3-25 05:32:42

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
页: [1]
查看完整版本: ASP网页编程之DataGrid小技能