0

我有很多按钮都具有相同的单击事件,但我想知道实际单击了哪个按钮,而无需为每个按钮编写单独的 C# 代码。如果我可以在 C# 中将 XAML 标记作为字符串读取,我可以让它工作,但我不知道该怎么做。有任何想法吗?谢谢!!

4

2 回答 2

0

为什么不直接将 sender 转换为 Button,然后将 button.Tag 转换为 string ?

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

然后当然你可以在标签值上做一个开关来知道哪个按钮是发件人。

于 2016-11-23T15:33:29.153 回答
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();
        }
    }

更多选择

于 2016-04-14T13:42:12.090 回答