不走寻常路的例子 不走寻常路 设计ASP.NET应用程序的七大绝招[2]
不走寻常路 设计ASP.NET应用程序的七大绝招[2]
滚动DataGrid
这招就更简单了 有时候你的页面只有一个固定的地方 但是需要显示非常多的数据 亦或是也不定 但是只有固定的一个地方给你显示它了 这时你就可以用下面这招 自动出滚动条 而且适用许多控件 很简单将你的控件放在一个DIV中将overflow属性设置成auto
<div style= height: px;width: px;overflow:auto ><asp:datagrid id= MyGrid runat= server /></div>动态创建控件
![不走寻常路的例子 不走寻常路 设计ASP.NET应用程序的七大绝招[2]](http://img.zhputi.com/uploads/dfc0/dfc0e6591d952eadefe7563cadd96f2919081.jpg)
利用PlaceHolder控件 这东西在ASP NET Mutil View和Master Page中运用的就更加多了
Sub Page_Load()Dim i as IntegerFor i= to Dim myUserControl as ControlmyUserControl = Page LoadControl( foo ascx )PlaceHolder Controls Add(myUserControl)PlaceHolder Controls Add(New LiteralControl( <br> ))Next iEnd Sub客户端代码的使用
) 可以使用客户端的事件代码 但两者不能同名 服务器端代码的名是你可以控制的 对于非ASP NET的标准控件的自定义控件必须实现IAttributeAccessor接口或从WebControl派生并且可用expando属性
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= Button _Click … />
) 使用可以在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) 还有更复杂的我认为不实用 大家可以自己去看 主要是运用RegisterStartupScript和JavaScript的技术
以上文章介绍了一些ASP NET中常用而且比较实用的技巧 希望能对大家的实际开发有所裨益!
lishixinzhi/Article/program/net/201311/15142