2013年9月25日 星期三

Page物件的IsPostBack屬性


在Page_Load()事件處理程序,可以使用Page物件的IsPostBack屬性檢查是否是表單送回,如下所示:
If Page.IsPostBack Then
   If name.Text <> "" Then
      msg.Text = name.Text & "John"
   End If
Else
   name.Text = "Mary"
   lblName.Text = "使用者名稱:Tom "
End If

DropDownList加入空白值


  <asp:DropDownList ID="DDL_GOOD" runat="server">                     <asp:ListItem Value=""></asp:ListItem>                        <asp:ListItem Value="FG">成品   </asp:ListItem>
                        <asp:ListItem Value="WIP">半成品</asp:ListItem>
                    </asp:DropDownList>

DropDownList 自動送回立即執行AutoPostBack

<asp:DropDownList Id="Username" Width="100px"

     Runat="server" 
AutoPostBack="True" 


    
OnSelectedIndexChanged="Change_Name">


   <asp:ListItem Text="A" Value="001"/>


   <asp:ListItem Text="B" Value="002"/>


   <asp:ListItem Text="C" Value="003"/>


</asp:DropDownList>

Web.config讓客戶端看到錯誤訊息


'在system.web中加入  <customErrors mode="Off"/>
'如下
<system.web>
     <customErrors mode="Off"/></system.web>

gridview匯出EXCEL


Imports System.IO
Imports System.Web
Imports System.Text

Partial Class GridView_Excel
    Inherits System.Web.UI.Page

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Response.Clear()
        Response.Buffer = True
        Response.Charset = "BIG5"
        Response.AppendHeader("Content-Disposition", "attachment;filename=test_file_" & FormatDateTime(Now, DateFormat.ShortTime) & ".xls")
        Response.ContentEncoding = Encoding.GetEncoding("BIG5")
        Response.ContentType = "application/ms-excel "
        GridView1.EnableViewState = False
        Dim objStringWriter As New StringWriter
        Dim objHtmlTextWriter As New UI.HtmlTextWriter(objStringWriter)
        '--註解:或是寫成 Dim objHtmlTextWriter As UI.HtmlTextWriter = New UI.HtmlTextWriter(objStringWriter)
        GridView1.RenderControl(objHtmlTextWriter)
        Response.Write(objStringWriter.ToString())
        Response.End()
    End Sub
    Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
        '處理'GridView' 的控制項 'GridView' 必須置於有 runat=server 的表單標記之中
    End Sub
End Class

ASP.NET 匯出 Excel - 只能在 Render 期間呼叫 錯誤

你只需要將 
EnableEventValidation = "false"
AutoEventWireup="true"


這兩個屬性加到 <%page %> 標籤裡即可。請注意預設是會有AutoEventWireup 屬性,所以只要將屬性值改到 True 就OK了!

格式化數字FORMATNUMBER


格式化數字FORMATNUMBER

VBScript有兩個用於格式化數字的負數。用函數FORMATNUMBER(),你可以指定小數點後的顯示位數,是否顯示前導的零,顯示負數時是否使用空格,和是否使用分隔符等。下面是一些例子及其返回值:
<%=FORMATNUMBER(6665.8999)%>
6,665.90
<%=FORMATNUMBER(“6665.8999”)%>
6,665.90
<%=FORMATNUMBER(6665.8999,3)%>
6,665.900
<%=FORMATNUMBER(-6665.8999,3,-1,-1,0)%>
(6665.900)
注意第二個例子用了一個字符串,二不是數字。當一個字符串可以被解釋為一個數字時,你可以用該字符串作為函數FORMATNUMBER()的參數。如果該字符串不能被解釋為數字,則會返回錯誤。
最後一個例子用到了函數FORMATNUMBER()的所有參數:
第一個參數(-6665.8999)指定了要進行格式化的數字。
第二個參數(3)指定了小數點後顯示的位數。
第三個參數(-1)指定了是否顯示前導的零。
第四個參數(-1)指定是否對負數使用括號。
最後一個參數(0)指定是否顯示分隔符。
注意
許多VBScript函數使用三態常量。函數FORMATNUMBER()的第三,第四,第五個參數可以接受三態常量或它們的值。下面的表列出了三態常量:
常量 值 描述
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用區域設置
你也可以指定這些格式的某個特定屬性依賴於Windows控製面板中的區域設置。要了解更多的訊息,可參見附錄C。
如果你需要格式化百分數,應使用函數FORMATPERCENT():
<%=FORMATPERCENT(12)%>
1,200.00%
<%=FORMATPERCENT(“12”)%>
1,200.00%
這個函數把它的第一個參數乘以100,並在結果後面追加一個百分號。函數FORMATPERCENT()也可以接受許多附加參數,以改變輸出格式。要了解更多的訊息,請參見附錄C。