<thead id="jxdzp"><address id="jxdzp"><pre id="jxdzp"></pre></address></thead>

<em id="jxdzp"><span id="jxdzp"></span></em>

    <listing id="jxdzp"><nobr id="jxdzp"><meter id="jxdzp"></meter></nobr></listing>

      <address id="jxdzp"></address>
      <noframes id="jxdzp"><form id="jxdzp"><th id="jxdzp"></th></form>
      <noframes id="jxdzp"><form id="jxdzp"><th id="jxdzp"></th></form>

          訂閱本欄目 RSS您所在的位置: 深山工作室 > asp.net > 正文

          ASP.NET常用的三十三種實用代碼(上)

          天極網 2007/11/29 20:40:30 深山行者 字體: 瀏覽 5622

          ASP.NET常用的實用代碼

          1. 打開新的窗口并傳送參數:

            傳送參數:


          response.write("<script>window.open(’*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"’)</script>")


            接收參數:


          string a = Request.QueryString("id");
          string b = Request.QueryString("id1");


            2.為按鈕添加對話框


          Button1.Attributes.Add("onclick","return confirm(’確認?’)");
          button.attributes.add("onclick","if(confirm(’are you sure...?’)){return true;}else{return false;}")


            3.刪除表格選定記錄


          int intEmpID = (int)MyDataGrid.DataKeys[e.Item.ItemIndex];
          string deleteCmd = "DELETE from Employee where emp_id = " + intEmpID.ToString()


            4.刪除表格記錄警告


          private void DataGrid_ItemCreated(Object sender,DataGridItemEventArgs e)
          {
           switch(e.Item.ItemType)
           {
            case ListItemType.Item :
            case ListItemType.AlternatingItem :
            case ListItemType.EditItem:
             TableCell myTableCell;
             myTableCell = e.Item.Cells[14];
             LinkButton myDeleteButton ;
             myDeleteButton = (LinkButton)myTableCell.Controls[0];
             myDeleteButton.Attributes.Add("onclick","return confirm(’您是否確定要刪除這條信息’);");
             break;
            default:
             break;
           }

          }


            5.點擊表格行鏈接另一頁


          private void grdCustomer_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
          {
           //點擊表格打開
           if (e.Item.ItemType == ListItemType.Item    e.Item.ItemType == ListItemType.AlternatingItem)
            e.Item.Attributes.Add("onclick","window.open(’Default.aspx?id=" + e.Item.Cells[0].Text + "’);");
          }


            雙擊表格連接到另一頁

            在itemDataBind事件中


          if(e.Item.ItemType == ListItemType.Item    e.Item.ItemType == ListItemType.AlternatingItem)
          {
           string OrderItemID =e.item.cells[1].Text;
           ...
           e.item.Attributes.Add("ondblclick", "location.href=’../ShippedGrid.aspx?id=" + OrderItemID + "’");
          }


            雙擊表格打開新一頁


          if(e.Item.ItemType == ListItemType.Item    e.Item.ItemType == ListItemType.AlternatingItem)
          {
           string OrderItemID =e.item.cells[1].Text;
           ...
           e.item.Attributes.Add("ondblclick", "open(’../ShippedGrid.aspx?id=" + OrderItemID + "’)");
          }


            ★特別注意:【?id=】 處不能為 【?id =】

            6.表格超連接列傳遞參數

           

          <asp:HyperLinkColumn Target="_blank" headertext="ID號" DataTextField="id" NavigateUrl="aaa.aspx?id=’
           <%# DataBinder.Eval(Container.DataItem, "數據字段1")%>’ & name=’<%# DataBinder.Eval(Container.DataItem, "數據字段2")%>’ />


            7.表格點擊改變顏色


          if (e.Item.ItemType == ListItemType.Item   e.Item.ItemType == ListItemType.AlternatingItem)
          {
           e.Item.Attributes.Add("onclick","this.style.backgroundColor=’#99cc00’;
              this.style.color=’buttontext’;this.style.cursor=’default’;");
          }


            寫在DataGrid的_ItemDataBound里


          if (e.Item.ItemType == ListItemType.Item   e.Item.ItemType == ListItemType.AlternatingItem)
          {
          e.Item.Attributes.Add("onmouseover","this.style.backgroundColor=’#99cc00’;
             this.style.color=’buttontext’;this.style.cursor=’default’;");
          e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=’’;this.style.color=’’;");
          }

           

            8.關于日期格式

            日期格式設定


          DataFormatString="{0:yyyy-MM-dd}"


            我覺得應該在itembound事件中


          e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd"))


            9.獲取錯誤信息并到指定頁面

            不要使用Response.Redirect,而應該使用Server.Transfer

            e.g


          // in global.asax
          protected void Application_Error(Object sender, EventArgs e) {
          if (Server.GetLastError() is HttpUnhandledException)
          Server.Transfer("MyErrorPage.aspx");

          //其余的非HttpUnhandledException異常交給ASP.NET自己處理就okay了 :)
          }


            Redirect會導致post-back的產生從而丟失了錯誤信息,所以頁面導向應該直接在服務器端執行,這樣就可以在錯誤處理頁面得到出錯信息并進行相應的處理

            10.清空Cookie


          Cookie.Expires=[DateTime];
          Response.Cookies("UserName").Expires = 0


            11.自定義異常處理


          //自定義異常處理類
          using System;
          using System.Diagnostics;

          namespace MyAppException
          {
           /// <summary>
           /// 從系統異常類ApplicationException繼承的應用程序異常處理類。
           /// 自動將異常內容記錄到Windows NT/2000的應用程序日志
           /// </summary>
           public class AppException:System.ApplicationException
           {
            public AppException()
            {
             if (ApplicationConfiguration.EventLogEnabled)LogEvent("出現一個未知錯誤。");
            }

           public AppException(string message)
           {
            LogEvent(message);
           }

           public AppException(string message,Exception innerException)
           {
            LogEvent(message);
            if (innerException != null)
            {
             LogEvent(innerException.Message);
            }
           }

           //日志記錄類
           using System;
           using System.Configuration;
           using System.Diagnostics;
           using System.IO;
           using System.Text;
           using System.Threading;

           namespace MyEventLog
           {
            /// <summary>
            /// 事件日志記錄類,提供事件日志記錄支持
            /// <remarks>
            /// 定義了4個日志記錄方法 (error, warning, info, trace)
            /// </remarks>
            /// </summary>
            public class ApplicationLog
            {
             /// <summary>
             /// 將錯誤信息記錄到Win2000/NT事件日志中
             /// <param name="message">需要記錄的文本信息</param>
             /// </summary>
             public static void WriteError(String message)
             {
              WriteLog(TraceLevel.Error, message);
             }

             /// <summary>
             /// 將警告信息記錄到Win2000/NT事件日志中
             /// <param name="message">需要記錄的文本信息</param>
             /// </summary>
             public static void WriteWarning(String message)
             {
              WriteLog(TraceLevel.Warning, message);  
             }

             /// <summary>
             /// 將提示信息記錄到Win2000/NT事件日志中
             /// <param name="message">需要記錄的文本信息</param>
             /// </summary>
             public static void WriteInfo(String message)
             {
              WriteLog(TraceLevel.Info, message);
             }
             /// <summary>
             /// 將跟蹤信息記錄到Win2000/NT事件日志中
             /// <param name="message">需要記錄的文本信息</param>
             /// </summary>
             public static void WriteTrace(String message)
             {
              WriteLog(TraceLevel.Verbose, message);
             }

             /// <summary>
             /// 格式化記錄到事件日志的文本信息格式
             /// <param name="ex">需要格式化的異常對象</param>
             /// <param name="catchInfo">異常信息標題字符串.</param>
             /// <retvalue>
             /// <para>格式后的異常信息字符串,包括異常內容和跟蹤堆棧.</para>
             /// </retvalue>
             /// </summary>
             public static String FormatException(Exception ex, String catchInfo)
             {
              StringBuilder strBuilder = new StringBuilder();
              if (catchInfo != String.Empty)
              {
               strBuilder.Append(catchInfo).Append("\r\n");
              }
              strBuilder.Append(ex.Message).Append("\r\n").Append(ex.StackTrace);
              return strBuilder.ToString();
             }

             /// <summary>
             /// 實際事件日志寫入方法
             /// <param name="level">要記錄信息的級別(error,warning,info,trace).</param>
             /// <param name="messageText">要記錄的文本.</param>
             /// </summary>
             private static void WriteLog(TraceLevel level, String messageText)
             {
              try
              {
               EventLogEntryType LogEntryType;
               switch (level)
               {
                case TraceLevel.Error:
                 LogEntryType = EventLogEntryType.Error;
                 break;
                case TraceLevel.Warning:
                 LogEntryType = EventLogEntryType.Warning;
                 break;
                case TraceLevel.Info:
                 LogEntryType = EventLogEntryType.Information;
                 break;
                case TraceLevel.Verbose:
                 LogEntryType = EventLogEntryType.SuccessAudit;
                 break;
                default:
                 LogEntryType = EventLogEntryType.SuccessAudit;
                 break;
               }

               EventLog eventLog = new EventLog("Application", ApplicationConfiguration.EventLogMachineName, ApplicationConfiguration.EventLogSourceName );
               //寫入事件日志
               eventLog.WriteEntry(messageText, LogEntryType);

              }
             catch {} //忽略任何異常
            }
           } //class ApplicationLog
          }

           

            12.Panel 橫向滾動,縱向自動擴展

           

          <asp:panel style="overflow-x:scroll;overflow-y:auto;"></asp:panel>


            13.回車轉換成Tab


          <script language="javascript" for="document" event="onkeydown">
           if(event.keyCode==13 && event.srcElement.type!=’button’ && event.srcElement.type!=’submit’ &&     event.srcElement.type!=’reset’ && event.srcElement.type!=’’&& event.srcElement.type!=’textarea’);
             event.keyCode=9;
          </script>

          onkeydown="if(event.keyCode==13) event.keyCode=9"

           

            14.DataGrid超級連接列


          DataNavigateUrlField="字段名" DataNavigateUrlFormatString="http://xx/inc/delete.aspx?ID={0}"


            15.DataGrid行隨鼠標變色


          private void DGzf_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
          {
           if (e.Item.ItemType!=ListItemType.Header)
           {
            e.Item.Attributes.Add( "onmouseout","this.style.backgroundColor=\""+e.Item.Style["BACKGROUND-COLOR"]+"\"");
            e.Item.Attributes.Add( "onmouseover","this.style.backgroundColor=\""+ "#EFF3F7"+"\"");
           }
          }

          后一頁:沒有了
          相關閱讀
          網易評論的蓋樓樣式
          汽車交易網站
          div+css中文字居于底部的解決方法與代碼
          江油旅游
          了解CSS中em單位和px單位的區別
          漢字轉聲母
          document對象詳解
          微信小程序開發中鏈接navigateTo與redirectTo的對比說明
          共有0條關于《ASP.NET常用的三十三種實用代碼(上)》的評論
          發表評論
          正在加載評論......
          返回頂部發表評論
          呢 稱:
          表 情:
          內 容:
          評論內容:不能超過 1000 字,需審核,請自覺遵守互聯網相關政策法規。
          驗證碼: 驗證碼 
          網友評論聲明,請自覺遵守互聯網相關政策法規。

          您發布的評論即表示同意遵守以下條款:
          一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會、集體和公民的合法權益;
          二、不得發布國家法律、法規明令禁止的內容;互相尊重,對自己在本站的言論和行為負責;
          三、本站對您所發布內容擁有處置權。

          更多信息>>欄目類別選擇
          百度小程序開發
          微信小程序開發
          微信公眾號開發
          uni-app
          asp函數庫
          ASP
          DIV+CSS
          HTML
          python
          更多>>同類信息
          ASP.NET中Cookie編程的基礎知識
          ASP.NET 2.0跨網頁提交的三法
          ASP.NET 2和IIS 7.0發生不兼容變化
          ASP.NET中文亂碼問題的解決。
          ASP.Net 2.0中的5個數據控件
          根據頁面模板動態生成html頁面
          更多>>最新添加文章
          dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
          Android移動端自動化測試:使用UIAutomatorViewer與Selenium定位元素
          抖音直播音掛載小雪花 懂車帝小程序
          javascript獲取瀏覽器指紋可以用來做投票
          火狐Mozilla Firefox出現:無法載入您的Firefox配置文件 它可能已經丟失 或是無法訪問 問題解決集合處理辦法
          在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
          python通過代碼修改pip下載源讓下載庫飛起
          python里面requests.post返回的res.text還有其它的嗎
          更多>>隨機抽取信息
          網頁設計中文本輸入框的參數說明
          鼠標放在表格區域內,當前格的一整行和一整列變色
          兼容pc、移動端用js實現復制內容到剪切板(支持蘋果safari瀏覽器)
          javascript表單驗證!
          深山行者V1.2旅行社網站管理系統
          一些常見的網頁設計小技巧
          88国产精品视频一区二区三区