我目前正在编写一个涉及在枢轴控制之间导航的应用程序。
总共有8个支点。我已经完成了一个,目前正在开发第二个。但是,当我重复与第一个枢轴控制相同的操作时,会出现错误。请参阅下面的代码和错误。
我是WP7开发的新手。任何帮助将非常感激。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
namespace SGFoodDirectory
{
public partial class Alcohol : PhoneApplicationPage
{
public Alcohol()
{
InitializeComponent();
}
private void BC_Click(object sender, RoutedEventArgs e)
{
AlPivot.SelectedItem = BcPivot;
}
private void MabukMoney_Click(object sender, RoutedEventArgs e)
{
AlPivot.SelectedItem = MmPivot;
}
}
}
错误:
Microsoft.Phone.Controls.PivotItem' does not contain a definition for 'SelectedItems' and no extension method 'SelectedItems' accepting a first argument of type 'Microsoft.Phone.Controls.PivotItem' could be found (are you missing a using directive or an assembly reference?)
答案 0 :(得分:1)
请不要这样做 - 枢轴设计为由用户使用触摸进行导航。从查看其他应用程序的经验来看,如果代码在按钮点击时跳转到另一个枢轴项目,则会非常混乱。
此外,有8个透视项似乎有点高:这可能会导致内存使用问题,以及必须轻弹页面8次以旋转回到开头的一般可用性。
我建议您使用其他PhoneApplicationPages重新考虑您的应用流程,这样您就不需要这样做了。
答案 1 :(得分:0)
你的意思是AlPivot.SelectedItem
而不是AlPivot.SelectedItems
吗?以下代码段从第一个支点项目导航到第二个按钮点击..
<强> XAML 强>
<controls:Pivot Name="PivotTest" Title="MY APPLICATION">
<controls:PivotItem Name="PI1" Header="item1">
<Grid>
<Button Content="Button" Height="72" HorizontalAlignment="Left" Margin="164,106,0,0" Name="button1" VerticalAlignment="Top" Width="160" Click="button1_Click"/>
</Grid>
</controls:PivotItem>
<controls:PivotItem Name="PI2" Header="item2">
<Grid/>
</controls:PivotItem>
</controls:Pivot>
<强> CS 强>
private void button1_Click(object sender, RoutedEventArgs e)
{
PivotTest.SelectedItem = PI2;
}
修改强>
啊!我想我看到了你的问题。您正在尝试设置PivotItem的SelectedItem属性,而不是Pivot控件。如果我将其更正,您需要在按钮单击时移动到相应的枢轴项。