asp.net 编程 实用语句(6条)

asp.net编程中6条实用语句,希望可以对asp.net编程的朋友有所帮助。

1.Panel 横向滚动,纵向自动扩展
<asp:panel style="overflow-x:scroll;overflow-y:auto;"></asp:panel>
2.回车转换成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");
}
3.DataGrid超级连接列
DataNavigateUrlField="字段名" DataNavigateUrlFormatString="http://xx/inc/delete.aspx?ID={0}"
4.自定义异常处理
//自定义异常处理类
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
}
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;
  }
  }
}

分类:实用技巧 时间:2015-05-04 人气:613
本文关键词: 编程 asp.net 实用语句
分享到:

相关文章

iOS 开发

Android 开发

Python 开发

JAVA 开发

开发语言

PHP 开发

Ruby 开发

搜索

前端开发

数据库

开发工具

开放平台

Javascript 开发

.NET 开发

云计算

服务器

Copyright (C) codeweblog.com, All Rights Reserved.

CodeWeblog.com 版权所有 闽ICP备15018612号

processed in 0.041 (s). 12 q(s)