2017-03-31 11 views
1

イベントパラメータがC#で何をするのか分かりません。 CoffeeButtonというボタンがあり、それをクリックすると、myFrameというフレームを使ってCoffeeという別のページに移動します。 これは私のコードです:C#イベントパラメータは何をしますか?

private void CoffeButton_Click(object sender, RoutedEventArgs e) 
{ 
    MyFrame.Navigate(typeof(Coffee)); 
} 

object senderRoutedEventArgs e、この場合には何をしますか?

例は素晴らしいでしょう!

+0

どのようなパラメータでも同じことが、呼び出されたメソッドに入力とコンテキストを提供します。上の例では、「送信者」はクリックされたボタンへの参照で、「e」はクリックイベントに関するコンテキストです。 – Igor

+0

場合によっては、誰がイベントを送信したのかを知る必要があります。たとえば、このイベントを引き起こした原因を知りたい場合などです。 ObservableCollectionには、コレクションに追加されたアイテムと削除されたアイテムを示すCollectionChangedがあります。 – FCin

+0

ただし、メソッドはどこから呼び出されますか? –

答えて

9

通常、「送信者」はイベントを発生させたオブジェクトの参照になります。したがって、たとえば、button_Clickハンドラ関数に複数のButtonが含まれている場合、送信者オブジェクトは実際のButtonオブジェクトがクリックされたときの参照になります。

通常、2番目のパラメータとして渡されるEventArgsオブジェクトは、コンテキストによって異なるものに使用されます。一般的には、発生したイベントに関連する追加情報を渡すために使用されます。たとえば、この場合、RouteEventArgsオブジェクトには、必要に応じて表示できるRoutedEventプロパティが用意されています。

関連する問題