2016-04-11 18 views
0

すべてのボタンに同じクリックイベントがありますが、どのボタンが実際にクリックされたのかは、それぞれ別のC#コードを記述しないとわかりたいと思います。 C#でXAMLタグを文字列として読み込めたら、それを動作させることができましたが、どうやってそれを行うのか分かりません。何か案は?ありがとう!!C#の文字列としてXAMLタグを読み取る

+1

あなたの正確な意味は本当にわかりませんが、XAMLタグの 'Name'プロパティを使用できませんでしたか?あなたの質問のより良い理解のためにいくつかのコードを提供してください。 – Smartis

+1

イベントでクリックされたボタンがすでに表示されています。これで十分ではないことや、今持っていないXAMLからどのように抜け出すのかを、より明確に説明する必要があります。 –

+0

名前はちょうどうまくいくでしょうが、私はそれを働かせることはできません。 XAMLコントロールのnameプロパティをどのように読み取ってC#で文字列を格納できるのか知っていますか?私は次のようなことを試みました:string buttonName = this.Name;しかしそれは名前を返さない。 –

答えて

0
private void Home_Click(object sender, RoutedEventArgs e) 
    { 
     var button = sender as RadioButton; 
     if (button != null) 
     { 
      switch (button.Tag.ToString()) 
      { 
       case "Home": 
        this.MyFrame.Navigate(typeof(Views.Home_Page)); 
        break; 
       case "Settings": 
        this.MyFrame.Navigate(typeof(Views.Settings_Page)); 
        break; 
      } 
      Header.Text = button.Tag.ToString(); 
     } 
    } 

To more options

0

ちょうどボタンとして送信者をキャストしないのはなぜ、その後、文字列としてbutton.Tagをキャスト?

Button _sender = sender as Button; 
string tag = _sender.Tag as string; 

そしてもちろん、あなたが送信者であったボタンを知っているタグ値のスイッチを行うことができます。

関連する問題