Windows Phone 8中的透视选择更改事件和单击处理程序
本文关键字:事件 单击 程序 处理 选择 Phone 透视 Windows | 更新日期: 2023-09-27 17:58:43
我不想把我的点击处理程序放在APP.XAML.CS中,所以我想把它们留在pivot中。XAML。和枢轴。XAML.CS
我该怎么做?
private void Pivot_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// MessageBox.Show("Pivot selection changed");
switch (((Pivot)sender).SelectedIndex)
{
case 0:
// MessageBox.Show("LoginAppBar launched");
ApplicationBar = ((ApplicationBar)Application.Current.Resources["zero"]);
break;
case 1:
// MessageBox.Show("DefaultAppBar launched");
ApplicationBar = ((ApplicationBar)Application.Current.Resources["one"]);
break;
case 2:
//Console.WriteLine("DefaultAppBar launched");
ApplicationBar = ((ApplicationBar)Application.Current.Resources["two"]);
break;
case 3:
//Console.WriteLine("DefaultAppBar launched");
ApplicationBar = ((ApplicationBar)Application.Current.Resources["three"]);
break;
}
}
您可以通过附加相应枢轴的应用程序栏来处理MSDN链接中描述的单击事件。你可以像这个一样在应用程序栏中添加或删除按钮
ApplicationBarIconButton button1 = new ApplicationBarIconButton();
button1.IconUri = new Uri("/Images/icon_search.png", UriKind.Relative);
button1.Text = "Search";
ApplicationBar.Buttons.Add(button1); // adding button
button1.Click -= ShowSearch; // Adding event to button
button1.Click += ShowSearch;
//Removing second button
ApplicationBar.Buttons.Remove(ApplicationBar.Buttons[1] as ApplicationBarIconButton);
不过,如果您对单击事件有问题,例如,您在每个透视图中都有搜索功能,并且您希望绑定搜索事件处理程序。为此,您可以绑定一个事件,在事件内部,您可以根据当前选定的数据透视搜索值
private void ShowSearch(object sender, EventArgs e)// event in the application bar button
{
if (NameOfPivot.SelectedIndex == 0)
{
// Do your action here
}
else if (NameOfPivot.SelectedIndex == 1)
{
// Do your action here
}
else if (NameOfPivot.SelectedIndex == 2)
{
// Do your action here
}
}