仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1354|回复: 20
打印 上一主题 下一主题

[学习教程] PHP网页设计必学:设计ASP.NET使用法式的七大绝招

[复制链接]
萌萌妈妈 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:59:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

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个人可能会碰到所有的问题,所有就可以问百度这个大家精华的集合了。
乐观 该用户已被删除
沙发
发表于 2015-2-4 07:55:48 | 只看该作者
建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。
简单生活 该用户已被删除
板凳
发表于 2015-2-9 02:39:20 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
精灵巫婆 该用户已被删除
地板
发表于 2015-2-26 03:13:46 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
山那边是海 该用户已被删除
5#
发表于 2015-3-8 11:39:01 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
小女巫 该用户已被删除
6#
发表于 2015-3-15 22:18:56 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
若天明 该用户已被删除
7#
发表于 2015-3-22 16:55:17 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
谁可相欹 该用户已被删除
8#
发表于 2015-3-27 07:10:35 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
小妖女 该用户已被删除
9#
发表于 2015-4-1 12:11:17 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
再现理想 该用户已被删除
10#
发表于 2015-4-8 18:27:43 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
活着的死人 该用户已被删除
11#
发表于 2015-4-10 11:26:08 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
冷月葬花魂 该用户已被删除
12#
发表于 2015-4-16 23:11:36 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
透明 该用户已被删除
13#
发表于 2015-4-18 23:02:58 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
深爱那片海 该用户已被删除
14#
发表于 2015-4-26 04:11:19 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
柔情似水 该用户已被删除
15#
发表于 2015-4-26 22:11:55 | 只看该作者
爱上php,他也会爱上你。
再见西城 该用户已被删除
16#
发表于 2015-5-4 02:04:04 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
灵魂腐蚀 该用户已被删除
17#
发表于 2015-5-6 06:43:42 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
愤怒的大鸟 该用户已被删除
18#
发表于 2015-5-8 00:19:49 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
因胸联盟 该用户已被删除
19#
发表于 2015-6-8 19:37:12 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
飘飘悠悠 该用户已被删除
20#
发表于 2015-6-13 21:52:30 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-10 04:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表