- - PR -
System.Windows.Forms.Timerについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-10-14 21:45
既出でしたら、申し訳ありません。
チェックボックスがチェックされた時のみ、データグリッドを5分おきに自動更新するプログラムを作ろうと思い、以下のようなコードを記述しました。 @ページロード時、チェックボックスがチェックされていない為、「timeReload_Elapsed」は動きません →○ Aチェックボックスがチェックされた時、「timeReload_Elapsed」は動きます →○ BAの後、チェックボックスのチェックを外すと、chkAUTO.Checked = Falseになり、timeReloadのAutoResetとEnabledもFalseになります。 →○ Cしかし5分後、「timeReload_Elapsed」が動きます かつ、chkAUTO.Checked = True になっています。 かつ、timeReloadのAutoResetとEnabledがTrueになっています →× なぜ、chkAUTO.Checked = Trueになるのでしょうか? なぜ、timeReloadのAutoResetとEnabledがTrueになるのでしょうか? 原因が分からず、行き詰まっています。 どこかコードに不備が、または注意すべきプロパティがありますでしょうか? どなたか、御教授下さい。 環境 .net2003 .net Freamework 1.1 OS Windows2000 タイマーはSystem.Windows.Forms.Timerの使っています 〜〜〜コード〜〜〜 Private Sub timeReload_Elapsed(ByVal sender As System.Object, ByVal e As System.Timers.ElapsedEventArgs) Handles timeReload.Elapsed Call setReloadTimer() If chkAUTO.Checked = False Then Exit Sub End If dtgMeisai.DataBind() Call subdtgMeisai_color() End Sub Private Sub chkAUTO_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkAUTO.CheckedChanged Call setReloadTimer() End Sub Private Sub setReloadTimer() With timeReload If chkAUTO.Checked = True Then .AutoReset = True .Enabled = True .Start() Else .AutoReset = False .Enabled = False .Stop() End If End With End Sub |
|
投稿日時: 2008-10-14 22:05
Windows?Web?
ページって言葉が気になる… |
|
投稿日時: 2008-10-14 22:09
>Windows?Web?
webです。 Page_Load後は、「timeReload_Elapsed」は動きません。 |
|
投稿日時: 2008-10-14 23:05
Web にタイマーなんて使えませんよ。
似たような事がしたければ、JavaScript つかって定期的に読みにいくとかですね。 |
|
投稿日時: 2008-10-15 07:28
HTTP は、問い合わせと返答がセットになっています。今、されようとしていることは、返答だけを何度も発生させようというものです。
また、ウェブでは、System.Windows 名前空間のクラスは、使ってはいけません。使えないことはないけど、色々面倒が発生します。 お勧めは、一週間ほどかけてウェブ アプリケーションの基礎を勉強すること。今なら一週間で済むことが、このまま開発を進めると調査に一ヶ月以上必要になってくるでしょう。 |
|
投稿日時: 2008-10-15 10:12
そうなんですね・・・
囚人さん、Jittaさん、ありがとうございました。 |
1