問題排查:沒有任何多載符合 System.Timers.ElapsedEventHandler 委派
這是在實作當前專案最後一個關鍵功能:提醒通知
所遇到的奇怪狀況
目前的設想,是以 Windows Form 結合 Timer,當作發送通知的載體
大家都知道在 C# 的環境裡,有三種內建的 Timer 可用:Windows Form Timer、System.Timer、Threading.Timer
遇到的怪事,主要是在 System.Timer 這一段
代碼如下:
using System;
using System.Drawing;
using System.Text;
using System.Threading;
using System.Timers;
using System.Windows.Forms; namespace SystemTimer
{
public partial class Form1 : Form
{
int number = ;
DateTime dt1 = new DateTime();
DateTime dt2 = new DateTime(); System.Timers.Timer tm; public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{ } private void b1_Click(object sender, EventArgs e)
{
tm = new System.Timers.Timer();
tm.Interval = ;
tm.Enabled = true;
tm.Elapsed += new System.Timers.ElapsedEventHandler(tm_elapsed);
tm.Start();
dt1 = DateTime.Now;
} private void b2_Click(object sender, EventArgs e)
{
tm.Enabled = false;
dt2 = DateTime.Now;
MessageBox.Show(Convert.ToString(dt2 - dt1));
} private void tm_elapsed(object sender, System.Timers.ElapsedEventHandler e)
{
lbmsg.Text = Convert.ToString(++number);
Thread.Sleep();
}
}
}
編譯時在標示紅色的那行提示錯誤,來對照一下微軟的官方參考資料
回調函數原形
public delegate void ElapsedEventHandler(
Object sender,
ElapsedEventArgs e
)
所以只要把
private void tm_elapsed(object sender, System.Timers.ElapsedEventHandler e)
{
lbmsg.Text = Convert.ToString(++number);
Thread.Sleep();
}
改成
private void tm_elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
lbmsg.Text = Convert.ToString(++number);
Thread.Sleep();
}
就可以了
問題排查:沒有任何多載符合 System.Timers.ElapsedEventHandler 委派的更多相关文章
- 問題排查:行動裝置網頁前端 UI 設計 (1)
		這是最近開始接手的一個微信公眾平台專案, 在重整後端程式碼時,因為也需要透過前端來看效果, 所以就因此在前端的部分遇到了不少問題, 畢竟這是以前沒接觸過的領域 (早年的網頁應用程式開發沒有那麼多分工) ... 
- 問題排查:DataGridView 資料行下拉選單,資料繫結階段顯示 DataGridViewComboBoxCell 值無效
		可能原因: 1.下拉選單的選項資料繫結晚於 DataGridView 的資料繫結 2.下拉選單的 DataPropertyName 屬性,比 DisplayMember.ValueMember 早賦值 ... 
- 問題排查:在 ServiceModel 客戶端配置部份中,找不到名稱 和協定 的終結點元素。
		同樣都是刪掉服務參考再重建重編譯重發行,為什麼之前幾次都沒事? 這次只不過是刪掉服務參考,然後換了個名稱重建而已,做完就變這樣? 後來發現問題出在 app.config,因為之前 app.config ... 
- 問題排查:行動裝置網頁前端 UI 設計 (2)
		之前上網找了個星級評分的範例來玩, 當然這個範例已經用在另一個專案了, 目前看起來沒什麼狀況, 不過在移植到目前的專案之後, 就出現了怪現象: 1. 在大部份時間裡,點擊星星不會有任何反應 2. 即便 ... 
- 問題排查:System.BadImageFormatException: 未能加载文件或程序集“System.ServiceModel
		錯誤訊息如下: System.BadImageFormatException: 未能加载文件或程序集“System.ServiceModel, Version=3.0.0.0, Culture=neu ... 
- 問題排查:类型“System.DateTime”的对象无法转换为类型“System.String”
		最近在擴充資料對接工具的功能 經常會遇到這個狀況 當然還有其他同類提示,例如 int/decimal 無法轉 System.String 等等 無獨有偶 這些錯誤幾乎都是在 DataTable 轉換成 ... 
- 問題排查:.NETSystem.Runtime.Remoting.RemotingException: TCP 信道协议冲突: 应为报头。
		這個錯誤訊息是在一個 Web Serveice 的偵錯階段發生的 目前還未找到原因,環境如下: 作業系統:Windows 10 x64 企業版 (簡中) 開發工具:Visual Studio 2013 ... 
- 問題排查:F5啟動偵錯後所提示的錯誤 (2)
		原始專案版本:Visual Studio 2005 開發環境:Visual Studio 2013 偵錯運行環境:IIS Express 啟動偵錯後,錯誤提示內容如下: HTTP 错误 403.14 ... 
- 問題排查:F5啟動偵錯後所提示的錯誤 (1)
		原始專案版本:Visual Studio 2005 開發環境:Visual Studio 2013 偵錯運行環境:IIS Express 啟動偵錯後,錯誤提示內容如下: HTTP 错误 500.23 ... 
随机推荐
- [Spring MVC] - InitBinder验证
			Spring MVC使用InitBinder验证: 使用InitBinder做验证的情况一般会在此Controller中提交的数据需要有一些是业务性质的,也即比较复杂的验证情况下才会使用.大部份简单的 ... 
- [solr] - 索引数据删除
			删除solr索引数据,使用XML有两种写法: 1) <delete><id>1</id></delete> <commit/> 2) < ... 
- 21副GIF动图让你了解各种数学概念
			baidu 21副GIF动图让你了解各种数学概念 
- js json排序
			var p = [ {name:"kitty", age:12}, {name:"sonny", age:9}, ... 
- Android开发60条技术经验总结
			Android开发60条技术经验总结,以下是全文: 1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有 ... 
- OpenExplorer打开文件夹
			Eclipse中文件打开功能,可以到https://github.com/samsonw/OpenExplorer/downloads下载最新版本,将jar包放到eclipse的plugins目录中, ... 
- osmdroid启程
			osmdroid一个牛逼的开源地图引擎,从今天开始好好研究一下~ 
- DATAGUARD 添加修改REDOLOG大小
			DG在线日志组大小修改 环境(单实例,Centos 6.5 X64,oracle 10.2.0.5,filesystem存储) REDO ONLINE LOG select * from v$logf ... 
- 查看.NET Service Pack版本
			原文地址:如何确定已安装的 Microsoft .NET Framework 版本和 Service Pack 级别 使用以下注册表信息确定已安装的 Microsoft .NET Framework ... 
- (Forward) Music Player: From UI Proposal to Code
			Some developers have difficult to code when the UI proposal is a bit “sophisticated” or “complex”. M ... 
