2012-02-09 1 views
-1

В настоящее время я кодирую приложение, которое включает в себя навигацию между элементами управления.Ошибка управления сводом

В общей сложности будет 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

Прокомментируйте это. Я просто запутался, почему код работал на первом контрольном элементе управления, но не работает над вторым опорным элементом. Любое объяснение будет глубоко оценено. – Patyh

ответ

1

Пожалуйста, не делайте этого - шарниры предназначены для навигации пользователем с помощью касания. Из опыта просмотра других приложений, которые делают это, очень сложно, если код переместится на другой элемент поворота при нажатии кнопки.

Кроме того, наличие 8 опорных элементов кажется немного высоким: это может привести к проблемам с использованием памяти, а также к общей удобству работы с возможностью разархивирования вашей страницы 8 раз, чтобы повернуть назад к началу.

Я бы рекомендовал пересмотреть поток приложений с помощью других страниц PhoneApplicationPages, поэтому вам не нужно это делать.

+0

Привет, Пол, Спасибо за рекомендацию. В Pivot Control перечислены различные категории, и кнопки должны помочь пользователю легче перемещаться по элементам в Pivot. Очень похоже на меню, указывающее на большее описание. – Patyh

+0

ListPicker - отличный контроль, который следует учитывать в этом сценарии (это в наборе инструментов Silverlight). –

+0

Итак, мой предложенный вариант не является жизнеспособным и не выполнимым в этом случае? – Patyh

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; 
} 

EDIT

Ah ! Кажется, я вижу твою проблему. Вы пытаетесь установить свойство SelectedItem для PivotItem, а не элемент Pivot. Если у меня есть это правильно, вы хотите, чтобы перейти к соответствующему пункту поворота на кнопку мыши.

+0

Использование 'AlPivot.SelectedItem' также показывает ту же ошибку после восстановления. – Patyh

+0

Спасибо zombiesheep. К сожалению, он работает для первого Pivot. Однако на втором шаге показана вышеупомянутая ошибка. – Patyh

+0

Да, это именно то, что я пытаюсь сделать. Я смущен, почему подобный код работал на мой первый стержень, но не работал на втором стержне. – Patyh

Смежные вопросы