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

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

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

Re[1]: 違うコントロールが押されたことを知る方法


(過去ログ 115 を表示中)

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

■67849 / inTopicNo.1)  違うコントロールが押されたことを知る方法
  
□投稿者/ とと (1回)-(2013/09/05(Thu) 11:59:29)

分類:[C#] 

2013/09/05(Thu) 12:14:56 編集(投稿者)

wpfで作っています。

スタックの中にボタンが並んでいます。

ボタン1が押された後、違うボタンが押されたことをボタン1が知ることはできますか?

また、スタック外の違うボタン等のコントロールが押されたことも
ボタン1のイベントで知ることができますか?
引用返信 編集キー/
■67852 / inTopicNo.2)  Re[1]: 違うコントロールが押されたことを知る方法
□投稿者/ shu (381回)-(2013/09/05(Thu) 13:13:48)
No67849 (とと さん) に返信
 
> ボタン1が押された後、違うボタンが押されたことをボタン1が知ることはできますか?
ボタン1が知るということが良く分かりませんが

buton1のクリック後button2からbutton5のどれかがクリックされた時に処理を行う
には例えば以下のように実装できます。

button1のクリックがどこまで有効かによってその他のコントロールでのイベントにもフラグを
falseにする処理が必要になります。

		private Button[] buttons;
		private bool button1clicked;
	
		public MainWindow()
		{
			InitializeComponent();

			buttons = new Button[] { button2, button3, button4, button5 };

			foreach(var btn in buttons)
			{
				btn.Click += button_Click;
			}
			button1clicked = false;
		}

		private void button1_Click(object sender, RoutedEventArgs e)
		{
			button1clicked = true;
		}

		private void button_Click(object sender, RoutedEventArgs e)
		{
			if (button1clicked)
			{
				//ここで処理
				MessageBox.Show(((Button)sender).Name + "がbutton1の後にクリックされました。");
				button1clicked = false;
			}
		}

引用返信 編集キー/
■67853 / inTopicNo.3)  Re[2]: 違うコントロールが押されたことを知る方法
□投稿者/ みさと (2回)-(2013/09/05(Thu) 13:20:09)
No67852 (shu さん) に返信

コントロールのイベントなどで、「フォーカスが外れたとき」のようなイメージで
「自分以外のコントロールがクリックされたとき」みたいなものはありませんか?
引用返信 編集キー/
■67854 / inTopicNo.4)  Re[3]: 違うコントロールが押されたことを知る方法
□投稿者/ shu (382回)-(2013/09/05(Thu) 15:50:11)
No67853 (みさと さん) に返信
> ■No67852 (shu さん) に返信
>
> コントロールのイベントなどで、「フォーカスが外れたとき」のようなイメージで
> 「自分以外のコントロールがクリックされたとき」みたいなものはありませんか?
イベントというのは実装済の処理のなかで定義されているものなので
そのようなイベントがあるとすると標準で自分以外のコントロールがクリックされたかを
全てのコントロールに対し常に監視していることになるのでパフォーマンスが悪くなってしまいます。
引用返信 編集キー/
■67855 / inTopicNo.5)  Re[1]: 違うコントロールが押されたことを知る方法
□投稿者/ バター (1回)-(2013/09/05(Thu) 15:57:22)
> ボタン1が押された後、違うボタンが押されたことをボタン1が知ることはできますか?

これは何のために必要なのでしょうか?
どのような背景でこのようなことをしたいのかを説明して頂けると、もっといい案をアドバイスしてもらえるかも知れませんよ。


ところで、「とと」=「みさと」?
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -