解析asp.net编程中6条实用语句(2)_.Net教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:什么是.net的接口和抽象类
什么是接口? 接口是包含一组虚方法的抽象类型,其中每一种方法都有其名称、参数和返回值。接口方法不能包含任何实现,CLR允许接口可以包含事件、属性、索引器、静态方法、静态字段、静态构造函数以及常数。但是注意:C#中不能包含任何静态成员。一个类可以实


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


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


6.模板列 
<ASP:TEMPLATECOLUMN visible="False" sortexpression="demo" 
headertext="ID"> 
<ITEMTEMPLATE> 
<ASP LABEL text=’<%# DataBinder.Eval(Container.DataItem, 

"ArticleID")%>’ runat="server" width="80%" 

id="lblColumn" /> 
</ITEMTEMPLATE> 
</ASP:TEMPLATECOLUMN> 
<ASP:TEMPLATECOLUMN headertext="选中"> 
<HEADERSTYLE wrap="False" horiz></HEADERSTYLE> 
<ITEMTEMPLATE> 
<ASP:CHECKBOX id="chkExport" runat="server" /> 
</ITEMTEMPLATE> 
<EDITITEMTEMPLATE> 
<ASP:CHECKBOX id="chkExportON" runat="server" 

enabled="true" /> 
</EDITITEMTEMPLATE> 
</ASP:TEMPLATECOLUMN> 

后台代码 
protected void CheckAll_CheckedChanged(object sender, System.EventArgs e) 

  //改变列的选定,实现全选或全不选。 
  CheckBox chkExport ; 
  if( CheckAll.Checked) 
  { 
  foreach(DataGridItem oDataGridItem in MyDataGrid.Items) 
  { 
  chkExport = (CheckBox)oDataGridItem.FindControl("chkExport"); 
  chkExport.Checked = true; 
  } 
  } 
  else 
  { 
  foreach(DataGridItem oDataGridItem in MyDataGrid.Items) 
  { 
  chkExport = (CheckBox)oDataGridItem.FindControl("chkExport"); 
  chkExport.Checked = false; 
  } 
  } 

分享:10个ASP.NET编程技巧
1、尽量减少表单回送 每当点击Web网页上的Button、LinkButton或ImageButton控件时,表单就会被发送到服务器上。如果控件的AutoPostBack属性被设置为true,如果CheckBox、CheckBoxList等控件的状态被改变后,也会使表单会发送回服务器。 每次当表单被发送回服

共2页上一页12下一页
来源:模板无忧//所属分类:.Net教程/更新时间:2010-06-01
相关.Net教程