为Canlendar控件添加事件,在网上找到一个VB代码的(http://itgroup.blueshop.com.tw/jeff377/blog?n=convew&i=2045),由于不会VB,请高手移植一下。代码如下:
/// <summary>
/// 日期儲存格引發的命令事件。
/// </summary>
< _
System.ComponentModel.Category(WebCommon.Category.Action), _
System.ComponentModel.Description("日期儲存格引發的命令事件。") _
> _
Public Event DayCommand(ByVal sender As Object, ByVal e As DayCommandEventArgs)
/// <summary>
/// 引發 DayCommand 事件。
/// </summary>
Protected Overridable Sub OnDayCommand(ByVal e As DayCommandEventArgs)
RaiseEvent DayCommand(Me, e)
End Sub
/// <summary>
/// 引發 PostBack 產生的控制項事件。
/// </summary>
Protected Overrides Sub RaisePostBackEvent(ByVal eventArgument As String)
Dim oArgument() As String
Dim oEventArgs As DayCommandEventArgs
If String.Compare(eventArgument, 0, "DayCommand", 0, "DayCommand".Length, StringComparison.Ordinal) = 0 Then
oArgument = Split(eventArgument, "$")
If oArgument.Length <> 3 Then Exit Sub
oEventArgs = New DayCommandEventArgs()
oEventArgs.CommandName = oArgument(1)
oEventArgs.Date = Date.Parse(oArgument(2))
OnDayCommand(oEventArgs)
Exit Sub
End If
MyBase.RaisePostBackEvent(eventArgument)
End Sub
/// <summary>
/// 取得引發 DayCommand 事件的用戶端指令碼。
/// </summary>
/// <param name="CommandName">命令名稱。</param>
/// <param name="Date">日期。</param>
Public Function GetDayCommandEventReference(ByVal CommandName As String, ByVal [Date] As Date) As String
Dim sArgument As String
sArgument = String.Format("DayCommand${0}${1}", CommandName, [Date].ToShortDateString)
Return Me.Page.ClientScript.GetPostBackEventReference(Me, sArgument)
End Function
/// <summary>
/// 日期儲存格引發的命令事件。
/// </summary>
< _
System.ComponentModel.Category(WebCommon.Category.Action), _
System.ComponentModel.Description("日期儲存格引發的命令事件。") _
> _
Public Event DayCommand(ByVal sender As Object, ByVal e As DayCommandEventArgs)
/// <summary>
/// 引發 DayCommand 事件。
/// </summary>
Protected Overridable Sub OnDayCommand(ByVal e As DayCommandEventArgs)
RaiseEvent DayCommand(Me, e)
End Sub
/// <summary>
/// 引發 PostBack 產生的控制項事件。
/// </summary>
Protected Overrides Sub RaisePostBackEvent(ByVal eventArgument As String)
Dim oArgument() As String
Dim oEventArgs As DayCommandEventArgs
If String.Compare(eventArgument, 0, "DayCommand", 0, "DayCommand".Length, StringComparison.Ordinal) = 0 Then
oArgument = Split(eventArgument, "$")
If oArgument.Length <> 3 Then Exit Sub
oEventArgs = New DayCommandEventArgs()
oEventArgs.CommandName = oArgument(1)
oEventArgs.Date = Date.Parse(oArgument(2))
OnDayCommand(oEventArgs)
Exit Sub
End If
MyBase.RaisePostBackEvent(eventArgument)
End Sub
/// <summary>
/// 取得引發 DayCommand 事件的用戶端指令碼。
/// </summary>
/// <param name="CommandName">命令名稱。</param>
/// <param name="Date">日期。</param>
Public Function GetDayCommandEventReference(ByVal CommandName As String, ByVal [Date] As Date) As String
Dim sArgument As String
sArgument = String.Format("DayCommand${0}${1}", CommandName, [Date].ToShortDateString)
Return Me.Page.ClientScript.GetPostBackEventReference(Me, sArgument)
End Function
解决方案 »
- 火狐实现计时器(在线等!)
- 三层结构DAL层数据类型转换问题?
- jmail发送邮件问题
- 关于计数的问题?在线等急!!!!
- 请问如果一个客户在客户端提交一条记录后,服务器端如何能及时地得到提示,数据库是sql2000
- DataBind 与 DataSource~~
- 关于批量修改div模块value和o_val值
- 一个DataGrid查询后的结果编辑问题
- 怎么在BUTTON的CLICK事件中实现下载一文件并删除服务器端该文件
- 重新安装sqlserver并且安装在原来的目录下,提示输入新的实例名,我输了kevin.安装完成后,企业管理器中变成了tech9\kevin,请问在asp.net中
- B/S与 C/S通过Webservice如何进行通讯
- 请问一个问题~~大家快来哦·~~
定义一个事件委托。
有可能需要定义一个参数类,从EventArgs继承。
定义一个事件。定义一个事件成员。
最好定义一个RaiseXXXXEvent的方法。
然后在需要触发的地方调用事件委托,或者调用RaiseXXXXEvent。
/// <summary>
/// 日期儲存格引發的命令事件。
/// </summary>
[
System.ComponentModel.Category("Action"),
System.ComponentModel.Description("日期儲存格引發的命令事件。")
]
public event EventHandler<DayCommandEventArgs> DayCommand;/// <summary>
/// 引發 DayCommand 事件。
/// </summary>
protected virtual void OnDayCommand(DayCommandEventArgs e)
{
if (DayCommand != null)
DayCommand(this, e);
}/// <summary>
/// 引發 PostBack 產生的控制項事件。
/// </summary>
protected override void RaisePostBackEvent(string eventArgument)
{
string[] oArgument;
DayCommandEventArgs oEventArgs; if (string.Compare(eventArgument, 0, "DayCommand", 0, "DayCommand".Length, StringComparison.Ordinal) == 0)
{
oArgument = eventArgument.Split('$');
if (oArgument.Length != 3) return;
oEventArgs = new DayCommandEventArgs();
oEventArgs.CommandName = oArgument[1];
oEventArgs.Date = DateTime.Parse(oArgument[2]);
OnDayCommand(oEventArgs);
return;
} base.RaisePostBackEvent(eventArgument);
}/// <summary>
/// 取得引發 DayCommand 事件的用戶端指令碼。
/// </summary>
/// <param name="CommandName">命令名稱。</param>
/// <param name="Date">日期。</param>
public string GetDayCommandEventReference(String commandName, DateTime date)
{
string sArgument; sArgument = String.Format("DayCommand${0}${1}", commandName, date.ToShortDateString());
return this.Page.ClientScript.GetPostBackEventReference(this, sArgument);
}