|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
会MYSQL吗?会,我会把我的信息在数据库里插入删除啦 跟着微软.NET的盛行,ASP.NET愈来愈为宽大开辟人员所承受。作为ASP.NET的开辟人员,咱们不但需求把握其根基的道理,更要多多理论,从理论中获得真实的开辟伎俩。在咱们的实践开辟中,常常根基的道理知足不了开辟需求,咱们更多的要堆集一些开辟技能,本文就向人人引见一些适用技能,但愿对人人的开辟有所裨益。
1. ~ 的用法
普通的情形下,咱们是利用./../ 如许的绝对途径来肯定和计划咱们的资本(好比图片、资本文件),但这类体例下在咱们安排使用的时分,能够会失足,别的关于.ascx的控件中假如包括了一个图片,而这个控件被咱们在分歧条理的两个目次的aspx文件分离援用时,成绩就会呈现了。
~/image/about.bmp 是一种十分好的办法,它以Web使用法式的根目次为肇端点,如许使得比你利用./image/about.bmp如许的体例要加倍天真和便利。有一点欠好,是这类体例是在ASP.NET运转时静态解析的,所以在IDE设计形式中,你能够不克不及预览它。
2. 在刷新和提交页面后,保留你的页面转动条的地位
常常有如许的情形,咱们需求用户提交一个表单,然而表单中有超越500+个?控件或文本框要填写,也就是说用户需求拉动IE的转动条才干够填得完,那末假设用户正在可见IE局限的2/3处,选择了一个组合框的值,很不幸组合框是办事器真个,那末也就意味着页面会提交一次,而当用户再看见刷新过的页面时,页面肯定在3/1的中央也就是显示在页面最入手下手的中央,用户只要拖动鼠标,然后接着方才的中央再填写剩下的250个控件,很不幸,370个控件又需求他选择一下?
用上面的办法可以很快地肯定和记住你提交前的地位。
网上的Old Dog Learns New Tricks也有一个相似的例子Maintain Scroll Position in any Page Element,不外他利用了Web Behavior这意味着你需求利用一个.htc文件
<P> Private Sub RetainScrollPosition()
Dim saveScrollPosition As New StringBuilder
Dim setScrollPosition As New StringBuilder
RegisterHiddenField("__SCROLLPOS", "0")
saveScrollPosition.Append("")
RegisterStartupScript("saveScroll", saveScrollPosition.ToString())
If (Page.IsPostBack = True) Then
setScrollPosition.Append("")
RegisterStartupScript("setScroll", setScrollPosition.ToString())
End If
End Sub
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
RetainScrollPosition()
End Sub
3. DataList利用分歧作风的模板
这招也十分适用,你可以制造两个分歧的模板或体现模式,分离以.ascx控件的模式保留,运转时依据某个前提静态的选择利用个中的一个模板,别的ScottGu以为ItemDataBound办法也能够定制你显示的体现,好比加亮某个元素或是加一个促销告白图等等。
<P> Dim theme As String
theme = DropDownList1.SelectedValue
DataList1.ItemTemplate = Page.LoadTemplate(theme & ".ascx") ---Cool
DataList1.DataSource = DS
DataList1.DataBind()
4. 设置办事器端控件的核心
<P> Private Sub SetFocus(ByVal controlToFocus As Control)
Dim scriptFunction As New StringBuilder
Dim scriptClientId As String
scriptClientId = controlToFocus.ClientID
scriptFunction.Append("")
RegisterStartupScript("focus", scriptFunction.ToString())
End Sub
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If (Page.IsPostBack = False) Then
SetFocus(TextBox1)
End If
End Sub
5. 转动DataGrid
这招就更复杂了,有时分你的页面只要一个固定的中央,然而需求显示十分多的数据,亦或是也不定,然而只要固定的一个中央给你显示它了。这时候你就能够用上面这招,主动出转动条,并且合用很多控件。很复杂将你的控件放在一个DIV中将overflow属性设置成auto
<P><div style=“height:400px;width:200px;overflow:auto”>
<asp:datagrid id=“MyGrid” runat=“server”/>
</div>
6. 静态创立控件
使用PlaceHolder控件,这器材在ASP.NET 2.0 Mutil-View和Master Page中应用的就加倍多了。
<P>Sub Page_Load()
Dim i as Integer
For i=0 to 4
Dim myUserControl as Control
myUserControl = Page.LoadControl(“foo.ascx”)
PlaceHolder1.Controls.Add(myUserControl)
PlaceHolder1.Controls.Add(New LiteralControl(“<br>”))
Next i
End Sub
7. 客户端代码的利用
1). 可使用客户真个事务代码,但二者不克不及同名,办事器端代码的名是你可以掌握的。关于非ASP.NET的尺度控件的自界说控件必需完成IAttributeAccessor接口或从WebControl派生而且可用expando属性
<P>asp:ImageButton id=“foo”
ImageUrl=“start.jpg”
onMouseOver=“rollover(this);”
onMouseOut=“rollout(this)”
rolloversrc=“myrollover.jpg”
rolloutsrc=“myrollout.jpg”
runat=“server”/>
<input type=Button onClick=“return clientHandler()”
onServerClick=“Button1_Click” … />
2). 利用可以在Postback之前履行客户端代码,固然也能够作废此次Postback,别的也能够会见客户端该页一切的客户端控件。
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
RegisterOnSubmitStatement("foo", "return confirm('Are you sure you want to submit the order?');")
End Sub
3). 还有更庞杂的我以为不适用,人人可以本人去看,次要是应用RegisterStartupScript和JavaScript的手艺
以上文章引见了一些ASP.NET中经常使用并且对照适用的技能,但愿能对人人的实践开辟有所裨益!
怎么配置呢 ,问最好的老实百度,问啥都有答案。所以用好搜索引擎是学好的令1个关键,程序会出各样的问题,没有1个人可能会碰到所有的问题,所有就可以问百度这个大家精华的集合了。 |
|