菜鸟的最爱 .NET经典代码汇总(三)

  程序的学习是一个循序渐进的过程,一些常用的或经典代码应该保存下来以便日后使用。本文就给出一些.net的经典代码,希望对大家有所帮助……

  21.自定义异常处理

  //自定义异常处理类
  using System;
  using System.Diagnostics;
  namespace MyAppException
  {
  /// 
  /// 从系统异常类ApplicationException继承的应用程序异常处理类。
  /// 自动将异常内容记录到Windows NT/2000的应用程序日志
  /// 
  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
  {
  /// 
  /// 事件日志记录类,提供事件日志记录支持
  /// 
  /// 定义了4个日志记录方法 (error, warning, info, trace)
  /// 
  /// 
  public class ApplicationLog
  {
  /// 
  /// 将错误信息记录到Win2000/NT事件日志中
  /// 需要记录的文本信息
  /// 
  public static void WriteError(String message)
  {
  WriteLog(TraceLevel.Error, message);
  }
  /// 
  /// 将警告信息记录到Win2000/NT事件日志中
  /// 需要记录的文本信息
  /// 
  public static void WriteWarning(String message)
  {
  WriteLog(TraceLevel.Warning, message);
  }
  /// 
  /// 将提示信息记录到Win2000/NT事件日志中
  /// 需要记录的文本信息
  /// 
  public static void WriteInfo(String message)
  {
  WriteLog(TraceLevel.Info, message);
  }
  /// 
  /// 将跟踪信息记录到Win2000/NT事件日志中
  /// 需要记录的文本信息
  /// 
  public static void WriteTrace(String message)
  {
  WriteLog(TraceLevel.Verbose, message);
  }
  /// 
  /// 格式化记录到事件日志的文本信息格式
  /// 需要格式化的异常对象
  /// 异常信息标题字符串.
  /// 
  /// 格式后的异常信息字符串,包括异常内容和跟踪堆栈.
  /// 
  /// 
  public static String FormatException(Exception ex, String catchInfo)
  {
  StringBuilder strBuilder = new StringBuilder();
  if (catchInfo != String.Empty)
  {
  strBuilder.Append(catchInfo).Append(" ");
  }
  strBuilder.Append(ex.Message).Append(" ").Append(ex.StackTrace);
  return strBuilder.ToString();
  }
  /// 
  /// 实际事件日志写入方法
  /// 要记录信息的级别(error,warning,info,trace).
  /// 要记录的文本.
  /// 
  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
  }

  22.Panel 横向滚动,纵向自动扩展

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

  23.回车转换成Tab

  (1)

<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>

  (2) //当在有keydown事件的控件上敲回车时,变为tab

  public void Tab(System.Web .UI.WebControls .WebControl webcontrol)
  {
  webcontrol.Attributes .Add ("onkeydown", "if(event.keyCode==13) event.keyCode=9");
  }

  24.DataGrid超级连接列

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

  25.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"+""");
  }
  }

<script language="javascript" src="/ad/js/articlebottom_ad.js" type="text/javascript"></script>
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值