C# Can';我的longlistselector无法导航到不同的页面

C# Can';我的longlistselector无法导航到不同的页面,c#,xaml,windows-phone-8,longlistselector,C#,Xaml,Windows Phone 8,Longlistselector,我试图让我的longlistselector根据所选的选项导航到不同的页面。例如,A导航到A.xaml,B导航到B.xaml,与cde等相同 Xaml 代码隐藏: { public partial class ASectionPopSpanish : PhoneApplicationPage { public ASectionPopSpanish() { InitializeComponent();

我试图让我的longlistselector根据所选的选项导航到不同的页面。例如,A导航到A.xaml,B导航到B.xaml,与cde等相同

Xaml


代码隐藏:

{
    public partial class ASectionPopSpanish : PhoneApplicationPage
    {
        public ASectionPopSpanish()
        {
            InitializeComponent();

            List<AddressBook> source = new List<AddressBook>();
            source.Add(new AddressBook("Joe", "Davidbisbal"));
            source.Add(new AddressBook("AdJoe", "Davidbisbal"));
            source.Add(new AddressBook("BJoe", "Davidbisbal"));
            source.Add(new AddressBook("VJoe", "Davidbisbal"));
            source.Add(new AddressBook("VJoe", "Davidbisbal"));
            source.Add(new AddressBook("CJoe", "Davidbisbal"));
            source.Add(new AddressBook("EJoe", "Davidbisbal"));
            source.Add(new AddressBook("Joe", "Davidbisbal"));

            List<AlphaKeyGroup<AddressBook>> DataSource = AlphaKeyGroup<AddressBook>.CreateGroups(source,
                System.Threading.Thread.CurrentThread.CurrentUICulture,
                (AddressBook s) => { return s.LastName; }, true);
            AddrBook.ItemsSource = DataSource;


        }

        public class AddressBook
        {
            public string LastName
            {
                get;
                set;
            }
            public string SectionPage
            {
                get;
                set;
            }

            public AddressBook(string lastname, string sectionpage)
            {
                this.LastName = lastname;
                this.SectionPage = sectionpage;
            }
        }

        private void SelectionChanged(object sender, SelectionChangedEventArgs e)
            {
                AddressBook selectedAddress = (AddressBook)AddrBook.SelectedItem;
            if (AddrBook.SelectedItem == null)
                return;
            NavigationService.Navigate(new Uri(AddressBook.SelectedItem.SectionPage & ".xaml", UriKind.Relative));
            AddrBook.SelectedItem = null;
            }
    }
}
{
公共部分类AseConctionPopSpanish:PhoneApplicationPage
{
公共英语(西班牙语)
{
初始化组件();
列表源=新列表();
来源.添加(新地址簿(“Joe”,“Davidbisbal”));
来源.添加(新地址簿(“AdJoe”、“Davidbisbal”);
来源.添加(新地址簿(“BJoe”、“Davidbisbal”);
来源.添加(新地址簿(“VJoe”、“Davidbisbal”);
来源.添加(新地址簿(“VJoe”、“Davidbisbal”);
来源.添加(新地址簿(“CJoe”、“Davidbisbal”);
来源.添加(新地址簿(“EJoe”、“Davidbisbal”);
来源.添加(新地址簿(“Joe”,“Davidbisbal”));
列表数据源=AlphaKeyGroup.CreateGroups(源,
System.Threading.Thread.CurrentThread.CurrentUICulture,
(地址簿s)=>{return s.LastName;},true);
AddrBook.ItemsSource=数据源;
}
公共类通讯簿
{
公共字符串姓氏
{
收到
设置
}
公共字符串部分页面
{
收到
设置
}
公共通讯簿(字符串lastname,字符串sectionpage)
{
this.LastName=LastName;
this.SectionPage=SectionPage;
}
}
私有void SelectionChanged(对象发送方,SelectionChangedEventArgs e)
{
AddressBook selectedAddress=(AddressBook)AddrBook.SelectedItem;
if(AddrBook.SelectedItem==null)
回来
NavigationService.Navigate(新Uri(AddressBook.SelectedItem.SectionPage&“.xaml”,UriKind.Relative));
AddrBook.SelectedItem=null;
}
}
}

我知道我需要实现selectionchanged,但不知道如何实现,有人能帮我一把吗?

您的代码片段中似乎缺少的是,XAML/code to attach
selector\u selectionchanged
方法to
selectionchanged
事件
LongListSelector

<phone:LongListSelector
              SelectionChanged="selector_SelectionChanged"
              x:Name="AddrBook"
              .....
              ...../>

重复的感谢,我已经添加了它,但由于某些原因不起作用,它给我错误,留下这样的代码,无法识别SelectedItem通过删除此部分
SelectionChanged=“selector\u SelectionChanged”
selector\u SelectionChanged
方法在选定项更改时不会执行。具体错误消息是什么?错误1“object”不包含“SectionPage”的定义,并且找不到接受“object”类型的第一个参数的扩展方法“SectionPage”(是否缺少using指令或程序集引用?)D:\TechsVault Apps\Apps-Test-in-progress\Mega-Ringtones HD\Mega-Ringtones\Data\aseoptionPopSpanish.xaml.cs 68 70 Mega-Ringtones
private void-SelectionChanged(object-sender,selectionchangedventargs e){if(AddrBook.SelectedItem==null)返回;NavigationService.Navigate(新Uri(AddrBook.SelectedItem.SectionPage&“.xaml”,UriKind.Relative));AddrBook.SelectedItem=null;}
尝试强制转换SelectedItem以键入地址簿,如更新的答案所示。
<phone:LongListSelector
              SelectionChanged="selector_SelectionChanged"
              x:Name="AddrBook"
              .....
              ...../>
AddressBook selectedAddress = (AddressBook)AddrBook.SelectedItem;
NavigationService.Navigate(new Uri(selectedAddress.SectionPage + ".xaml", UriKind.Relative));