WEBFORM操作技巧

来源:互联网 发布:广州哪里有淘宝美工学 编辑:程序博客网 时间:2024/06/06 07:05

对于WEBFORM技术,虽然目前正在被MVC类技术替代,但在维护早期网站,以及制作一些小型网站上仍占有一定市场,因此,对于该类技术,仍需进行一定的积累,以便需要时使用。


1.网页闪屏问题。

对于WEBFORM类的网页,往往控件较多,整页加载时便会出现闪屏等现象。此时可以通过异步来实现,并且WEBFORM有异步控件可以实现对部分内容的异步刷新,从而通过减少流量传输而达到解决闪屏或降低闪屏强度的要求。对于异步控件机制,主要是将需要异步刷新的内容放在以下控件中即可实现。

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>

//以下为异步操作控件
            <asp:ScriptManager ID="ScriptManager1" runat="server">
            </asp:ScriptManager>

//此处添加需要异步刷新的内容。

//下面为WEBFORM自带的定时器设置。

<asp:Timer ID="TimerGetData" runat="server" Interval="300000"
                ontick="TimerGetData_Tick">
            </asp:Timer>
        </ContentTemplate>
    </asp:UpdatePanel>


2.定时器问题。

WEBFORM的初衷便是可以像开发WINFORM一样开发网站。因此,WEBFORM拥有强大的控件库,集成了较多的功能模块,其中TIMER控件便是其中之一。通过像WINFORM一样引用TIMER控件,可以实现定时功能。同时,鉴于WEBFORM的异步集成机制,可以更方便的设置TIMER定时事件的同步或异步操作。


3.COOKIE 与SESSION的引用一般如下:HttpContext.Current.Request.Cookies[cookiename] 和HttpContext.Current.Session[name],即必须表明目前的通讯上下文中的哪一个COOKIE或SESSION.

另外,REQUEST.COOKIE一般是由客户端发送给服务器的,供服务器使用。而REPONSE.COOKIE则是由服务器提供给客户端的,且提供给客户端后会保存在客户端。

但是,在读取COOKIE的值时,一般是读取REQUEST的值,因为COOKIE都是存在客户端的,而设置COOKIE,在后台中则是设置RESPONSE的COOKIE,因为后台数据回发时,相同键值的COOKIE会覆盖掉前台的COOKIE值。

而SESSION是保存服务器端的,没有这个限制。


4.对于页面上的控件样式属性,一般通过样式类进行设置比较好一下。


5.GRIDVIEW常用属性总结。

5.1设置边框样式,可以在GRIDVIEW标签上设置即可。如:BackColor="#FFFFCC" ForeColor="Black" BorderColor="Black" BorderStyle="Solid" BorderWidth="3px" Font-Bold="True" Font-Size="18px" Height="60px" HorizontalAlign="Center" Width="100%"


5.2 对于GRIDVIEW控件,如果在代码中设置的数据源,则进行控件内的编辑,删除功能时相对较麻烦,故可以变相的利用选择命令设置到其他控件上进行操作。

     当然,也有其他方法,如ROWCOMMAND方法进行操作,不过对于不熟练的程序员来说,也相对麻烦一些.

5.3 对于数据转换时,注意int.parst与decimal.parse往往根据数据的不同类型而报错。


5.4 注意分页的设置,即可以简单格式,也可以进行复杂设置。


6.对于DROMDOWNLIST控件,注意对SELECTEDVALUE进行设置时,注意原来存储的格式,如果原来是字符串,则现在也应该是字符串,不然会提示错误。

另外,对于相关联的控件,如果将前者的设置值后,需要进行相应的变更事件,不然无法对后者进行设置,即代码中的设置不会引起selectedindexchange事件。如小区管理中,单元号码的设置前提是楼栋的选择,但设置了楼栋SELECTEDVALUE后,必须进行其的CHANGE事件,才能设置单元的SELECTEDVALUE。


7.对于WEBFORM的相关控件,尤其是服务器控件,如果在建立控件时对某一部分进行隐藏,则赋值时往往不会对其赋值,因此,如果希望隐藏某些控件,同时又希望在需要时对其取值,则可以在代码在赋值前先显示,待赋值后进行隐藏即可。




原创粉丝点击