C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: 独自プロパティのイベント作成


(過去ログ 55 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■31264 / inTopicNo.1)  独自プロパティのイベント作成
  
□投稿者/ まいか (55回)-(2009/01/19(Mon) 16:20:59)

分類:[.NET 全般] 

お世話になります
WinXP、VB.NET2005と言う環境です
独自に作ったプロパティの値を変えた時に、走るイベントを作成させたいのですが、どうすれば良いのでしょうか
例を上げれば、テキストボックスにBoolean型の「Atai」と言う独自プロパティを作成したとします
Ataiプロパティの値ををTrueからFalseへ、またFalseからTrueに変わった時にイベントを走らせたいのですが
どうすれば良いのでしょうか
よろしくお願いします
引用返信 編集キー/
■31267 / inTopicNo.2)  Re[1]: 独自プロパティのイベント作成
□投稿者/ まさる (48回)-(2009/01/19(Mon) 16:56:54)
まさる さんの Web サイト
1.独自のイベントを定義(たとえばAtaiChanged)
2.Ataiのsetの中で、変更されていたらAtaiChangedイベントを発生させる

といった感じで出来ると思います。

とりこびとさんが以前blogにイベントについてまとめていました。
参考にどうぞ。
http://blogs.wankuma.com/torikobito/archive/2007/10/24/103813.aspx
引用返信 編集キー/
■31269 / inTopicNo.3)  Re[1]: 独自プロパティのイベント作成
□投稿者/ 中村家 (4回)-(2009/01/19(Mon) 16:59:02)
こんにちは、中村家と言います。

No31264 (まいか さん) に返信
> お世話になります
> WinXP、VB.NET2005と言う環境です
> 独自に作ったプロパティの値を変えた時に、走るイベントを作成させたいのですが、どうすれば良いのでしょうか
> 例を上げれば、テキストボックスにBoolean型の「Atai」と言う独自プロパティを作成したとします
> Ataiプロパティの値ををTrueからFalseへ、またFalseからTrueに変わった時にイベントを走らせたいのですが
> どうすれば良いのでしょうか
> よろしくお願いします

どのようなタイミングで、AtaiのTRUE,FALSEが変更されるか。
と言う点が不明ですが、概ね以下の流れかと思います。

1、発生するイベントを作る
2、発生させたいタイミング(今回だとAtaiが切替った時点)でRaiseEventする。
3、イベントを受け取って、行いたい何かをする。

詳しくは以下のサイトを参考頂ければわかり易いです。

http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard49.htm
引用返信 編集キー/
■31270 / inTopicNo.4)  Re[2]: 独自プロパティのイベント作成
□投稿者/ まいか (56回)-(2009/01/19(Mon) 17:04:12)
まさるさん、ありがとうございます
> http://blogs.wankuma.com/torikobito/archive/2007/10/24/103813.aspx
を参考にして、イベントを作成する事が出来ました
解決済み
引用返信 編集キー/
■31271 / inTopicNo.5)  Re[3]: 独自プロパティのイベント作成
□投稿者/ まいか (57回)-(2009/01/19(Mon) 17:06:58)
2009/01/19(Mon) 17:07:46 編集(投稿者)

No31270 (まいか さん) に返信
> まさるさん、ありがとうございます
>>http://blogs.wankuma.com/torikobito/archive/2007/10/24/103813.aspx
> を参考にして、イベントを作成する事が出来ました
解決済み
引用返信 編集キー/
■31291 / inTopicNo.6)  Re[4]: 独自プロパティのイベント作成
□投稿者/ とりこびと (1回)-(2009/01/20(Tue) 10:34:15)
念のため・・・。

>http://blogs.wankuma.com/torikobito/archive/2007/10/24/103813.aspx

では

> プロパティの値を変えた時

というものをちゃんと表現していません。

そのエントリの一つ前のエントリ
http://blogs.wankuma.com/torikobito/archive/2007/10/23/103595.aspx
で、諸事情により

「今回は余計な事は考えないようにするためにDisplayName プロパティに対して値が設定されたら常に変更されたと考えることに」した前提があります。

なので、Ataiプロパティのセッタでは「値が変更されたかどうか」も実装してくださいね。


■No31271 (まいか さん) に返信
> 2009/01/19(Mon) 17:07:46 編集(投稿者)
> 
> ■No31270 (まいか さん) に返信
>>まさるさん、ありがとうございます
> >>http://blogs.wankuma.com/torikobito/archive/2007/10/24/103813.aspx
>>を参考にして、イベントを作成する事が出来ました

解決済み
引用返信 編集キー/
■31293 / inTopicNo.7)  Re[5]: 独自プロパティのイベント作成
□投稿者/ Mr.T (306回)-(2009/01/20(Tue) 11:41:49)
Mr.Tです。

> 「今回は余計な事は考えないようにするためにDisplayName プロパティに対して値が設定されたら常に変更されたと考えることに」した前提があります。
>
> なので、Ataiプロパティのセッタでは「値が変更されたかどうか」も実装してくださいね。

ここのAtaiプロパティが独自クラスとかじゃなくて、たんなるIntegerとかなら、
セット前の値とセットしたい値を比較して、違ってたら発火、になりますよね。

もし独自クラスなら、さらにそのクラスのどのプロパティが異なっていたのかを調べないと
いけなくて面倒だけど...
引用返信 編集キー/
■31296 / inTopicNo.8)  Re[6]: 独自プロパティのイベント作成
□投稿者/ επιστημη (1541回)-(2009/01/20(Tue) 11:52:47)
επιστημη さんの Web サイト
> もし独自クラスなら、さらにそのクラスのどのプロパティが異なっていたのかを調べないと
> いけなくて面倒だけど...

それはその"独自クラス"とやらにメソッドこさえてそれ自身に判断を任すんでしょねー。
# bool Equals(object) をoverrideするも可

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -