【发布时间】:2017-02-14 04:57:16
【问题描述】:
我有一个带有 ListBox 的汉堡菜单,当我单击项目时,它会突出显示并导航到相关页面,但是当我单击 xaml 页面内的任何链接时,即使页面被导航,汉堡项目也不会改变。如何从后面的代码中选择和突出显示列表框项。
我从需要将列表框项更改为所需项的任何位置调用以下函数
public async static void ChangeSideBarItem()
{
ADHome objADHome = new ADHome();
string selected = App.SelectedPage;
int x = objADHome.SideBarListBox.Items.IndexOf(selected);
if (!String.IsNullOrEmpty(selected))
{
for (int index = 0; index < objADHome.SideBarListBox.Items.Count; index++)
{
HamburgerItemClass item = (HamburgerItemClass)objADHome.SideBarListBox.Items[index];
string item1 = item.Title;
if (selected == item1)
{
objADHome.SideBarListBox.SelectedItem = index;
break;
}
}
}
}
我通过从不同的 xaml 页面(订单页面)设置 App.SelectedPage 来调用上述方法,当我单击列表框(侧边栏)中的特定仪表板项目时,我有一个链接仪表板导航回仪表板页面应该突出显示
private void DashboardLink_Click(object sender, RoutedEventArgs e)
{
App.SelectedPage = "Dashboard";
ADHome.ChangeSideBarItem();
this.Frame.Navigate(typeof(DashBoard));
}
但它没有被选中,当我调试它时,在 selecteditem 中显示 null
【问题讨论】: