我有一個列表視圖,每列都有一個關聯的id_Number。如果用戶點擊其中一行,是否可以重定向到另一個頁面?例如,如果id_Number是4,則應將頁面重定向到achive.xaml。重定向到列表視圖行上的頁面單擊
的MainPage
<SplitView Name="MySplitView"
Grid.Row="1"
DisplayMode="CompactOverlay"
OpenPaneLength="150"
CompactPaneLength="45" >
<SplitView.Pane>
<ListBox SelectionMode="Single"
SelectionChanged="ListBox_SelectionChanged">
<ListBoxItem Name="Home">
<StackPanel Orientation="Horizontal">
<TextBlock
Text=""
FontFamily="Segoe MDL2 Assets"
FontSize="20" />
<TextBlock Text="Home"
FontSize="18"
Margin="20,0,0,0" />
</StackPanel>
</ListBoxItem>
<ListBoxItem Name="About">
<StackPanel Orientation="Horizontal">
<TextBlock
Text=""
FontFamily="Segoe MDL2 Assets"
FontSize="20" />
<TextBlock Text="About"
FontSize="18"
Margin="20,0,0,0" />
</StackPanel>
</ListBoxItem>
</ListBox>
</SplitView.Pane>
<SplitView.Content>
<GridView Name="SkinItemGrid"
Background="LightGray"
ItemsSource="{x:Bind SkinItems}"
HorizontalAlignment="Stretch"
IsItemClickEnabled="True"
Margin="10,0,0,0">
<GridView.ItemTemplate>
<DataTemplate x:DataType="data:SkinItem">
<local:SkinItemControl />
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
</SplitView.Content>
</SplitView>
MainPage.cs
private void ListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (Home.IsSelected)
{
SkinsManager.GetSkins("Home", SkinItems);
TitleTextBlock.Text = "Home";
}
else if (About.IsSelected)
{
SkinsManager.GetSkins("About", SkinItems);
TitleTextBlock.Text = "About";
}
}
外觀類
public class SkinItem
{
public int Id { get; set; }
public string Category { get; set; }
public string Headline { get; set; }
public string Subhead { get; set; }
public string DateLine { get; set; }
public string Image { get; set; }
}
public class SkinsManager
{
public static void GetSkins(string category, ObservableCollection<SkinItem> skinItems)
{
var allItems = getSkinItems();
var filteredNewsItems = allItems.Where(p => p.Category == category).ToList();
skinItems.Clear();
filteredNewsItems.ForEach(p => skinItems.Add(p));
}
private static List<SkinItem> getSkinItems()
{
var items = new List<SkinItem>();
items.Add(new SkinItem() { Id = 1, Category = "Home", Headline = "Diagnosis", Subhead = "", DateLine = "", Image = "Assets/Diagnosis.jpg" });
items.Add(new SkinItem() { Id = 2, Category = "Home", Headline = "Archive", Subhead = "", DateLine = "", Image = "Assets/Archive.png" });
items.Add(new SkinItem() { Id = 3, Category = "About", Headline = "VKSE", Subhead = "", DateLine = "", Image = "Assets/About.jpg" });
return items;
}
}
}
你可能會使用類似這裏發佈的東西,並使用'e.RoutedEventsArgs'基於切換案例來執行重定向http://stackoverflow.com/questions/1271375/how-to-capture-a-mouse-點擊(功能(){ var id = $(this).attribute(「2」); if(點擊一個項目中的列表框中的項目) – MethodMan