随着微软 NET的流行 ASP NET越来越为广大开发人员所接受 作为ASP NET的开发人员 我们不仅需要掌握其基本的原理 更要多多实践 从实践中获取真正的开发本领 在我们的实际开发中 往往基本的原理满足不了开发需求 我们更多的要积累一些开发技巧 本文就向大家介绍一些实用技巧 希望对大家的开发有所裨益
~ 的用法
一般的情况下 我们是使用 / / 这样的相对路径来确定和规划我们的资源(比如图片 资源文件) 但这种方式下在我们部署应用的时候 可能会出错 另外对于 ascx的控件中如果包含了一个图片 而这个控件被我们在不同层次的两个目录的aspx文件分别引用时 问题就会出现了
~/image/about bmp 是一种非常好的方法 它以Web应用程序的根目录为起始点 这样使得比你使用 /image/about bmp这样的方式要更加灵活和方便 有一点不好 是这种方式是在ASP NET运行时动态解析的 所以在IDE设计模式中 你可能不能预览它
在刷新和提交页面后 保存你的页面滚动条的位置
经常有这样的情况 我们需要用户提交一个表单 但是表单中有超过 +个?控件或文本框要填写 也就是说用户需要拉动IE的滚动条才能够填得完 那么假如用户正在可见IE范围的 / 处 选择了一个组合框的值 很不幸组合框是服务器端的 那么也就意味着页面会提交一次 而当用户再看见刷新过的页面时 页面确定在 / 的地方也就是显示在页面最开始的地方 用户只有拖动鼠标 然后接着刚刚的地方再填写剩下的 个控件 很不幸 个控件又需要他选择一下?
用下面的方法可以很快地确定和记住你提交前的位置
网上的Old Dog Learns New Tricks也有一个类似的例子Maintain Scroll Position in any Page Element 不过他使用了Web Behavior这意味着你需要使用一个 htc文?lt/P>
Private Sub RetainScrollPosition()
Dim saveScrollPosition As New StringBuilderDim setScrollPosition As New StringBuilder
RegisterHiddenField( __SCROLLPOS )saveScrollPosition Append( <script language= javascript > )saveScrollPosition Append( function saveScrollPosition() { )saveScrollPosition Append( document forms[ ] __SCROLLPOS value = thebody scrollTop)saveScrollPosition Append( } )saveScrollPosition Append( thebody onscroll=saveScrollPosition)saveScrollPosition Append( </script> )
RegisterStartupScript( saveScroll saveScrollPosition ToString())
If (Page IsPostBack = True) Then
setScrollPosition Append( <script language= javascript > )setScrollPosition Append( function setScrollPosition() { )setScrollPosition Append( thebody scrollTop = &Request( __SCROLLPOS ) &)setScrollPosition Append( } )setScrollPosition Append( thebody onload=setScrollPosition)setScrollPosition Append( </script> )RegisterStartupScript( setScroll setScrollPosition ToString())
End If
End Sub
Private Sub Page_Load(ByVal sender As System Object ByVal e As System EventArgs) Handles MyBase LoadRetainScrollPosition()End Sub
DataList使用不同风格的模板
这招也非常实用 你可以制作两个不同的模板或表现形式 分别以 ascx控件的形式保存 运行时根据某个条件动态的选择使用其中的一个模板 另外ScottGu认为ItemDataBound方法也可以定制你显示的表现 比如加亮某个元素或是加一个促销广告图等等
Dim theme As Stringtheme = DropDownList SelectedValue
DataList ItemTemplate = Page LoadTemplate(theme &ascx ) CoolDataList DataSource = DSDataList DataBind()
设置服务器端控件的焦点
Private Sub SetFocus(ByVal controlToFocus As Control)Dim scriptFunction As New StringBuilderDim scriptClientId As String
scriptClientId = controlToFocus ClientIDscriptFunction Append( <script language= javascript > )scriptFunction Append( document getElementById( &scriptClientId &) focus())scriptFunction Append( </script> )RegisterStartupScript( focus scriptFunction ToString())End Sub
Private Sub Page_Load(ByVal sender As System Object ByVal e As System EventArgs) Handles MyBase LoadIf (Page IsPostBack = False) ThenSetFocus(TextBox )End IfEnd Sub
lishixinzhi/Article/program/net/201311/15143
ASP.NET3.5网站开发实例教程?
首先运行visualstudio2015进入vs2015主画面
找到左上角的文件依次找到文件->新建->项目
在打开的新建项目窗口中,找到我们的framwork版本我们选择ASP.NET3.5
选择ASP.NET3.5后,在左侧找到web项目选择ASP.NET空web应用程序
接着定义我们的应用程序名称和位置设定完成后,选择确定,选择确定后,就会根据我们的设定,生成应用程式所需的文件和框架目录结构见下图
因为我们是创建的空应用程序所有整个目录结构很简单我们可以右键单击我们的应用程序,选择属性来确认我们当前的框架是否使用的是ASP.NET3.5
接着我们就可以开发我们的web应用程序了我们新建一个aspx页面简单的填入以下内容:<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="WebForm1.aspx.cs"Inherits="WebApplication1.WebForm1"%>
撰写代码完成后,保存并运行就可以了这样一个简单的web应用程序实例就创建完成了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)