单击时如何隐藏列表视图,并重新路由到另一个页面?
How to hide listview when clicked, and reroute to another page?
我目前正在创建一个带有 ListView 和 ListViewItems 的菜单。在菜单中,我想从一页返回到预定义的页面。当我返回预定义页面时,单击的 ListviewItem 应该会消失。但是,我对如何处理视图之间的流以及如何在单击时隐藏 ListView 感到困惑。
XAML
<ListView x:Name="GoBackMenu" Foreground="#FF5C99D6" ScrollViewer.HorizontalScrollBarVisibility="Disabled" SelectionChanged="ListViewMenu_ClashPressed" SelectedIndex="{Binding SelectedIndex}" Margin="0 0 0 290" Visibility="visible" >
<ListViewItem x:Name="Swift_goBackView" Height="80">
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="Backburger" Height="25" Width="25" Margin="10"/>
<TextBlock Text="Back to overview" VerticalAlignment="Center" Margin="20 10"/>
</StackPanel>
</ListViewItem>
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<EventSetter Event="PreviewMouseLeftButtonDown" Handler="ListViewItem_PreviewMouseLeftButtonDown" ></EventSetter>
</Style>
</ListView.ItemContainerStyle></ListView>
提前感谢您的帮助。
您可以在事件处理程序中像这样删除被点击的项目:
private void ListViewItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
ListViewItem lvi = (ListViewItem)sender;
GoBackMenu.Items.Remove(lvi);
}
"the flow between the views is handled" 如何取决于您尚未描述的当前导航实现。
我目前正在创建一个带有 ListView 和 ListViewItems 的菜单。在菜单中,我想从一页返回到预定义的页面。当我返回预定义页面时,单击的 ListviewItem 应该会消失。但是,我对如何处理视图之间的流以及如何在单击时隐藏 ListView 感到困惑。
XAML
<ListView x:Name="GoBackMenu" Foreground="#FF5C99D6" ScrollViewer.HorizontalScrollBarVisibility="Disabled" SelectionChanged="ListViewMenu_ClashPressed" SelectedIndex="{Binding SelectedIndex}" Margin="0 0 0 290" Visibility="visible" >
<ListViewItem x:Name="Swift_goBackView" Height="80">
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="Backburger" Height="25" Width="25" Margin="10"/>
<TextBlock Text="Back to overview" VerticalAlignment="Center" Margin="20 10"/>
</StackPanel>
</ListViewItem>
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<EventSetter Event="PreviewMouseLeftButtonDown" Handler="ListViewItem_PreviewMouseLeftButtonDown" ></EventSetter>
</Style>
</ListView.ItemContainerStyle></ListView>
提前感谢您的帮助。
您可以在事件处理程序中像这样删除被点击的项目:
private void ListViewItem_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
ListViewItem lvi = (ListViewItem)sender;
GoBackMenu.Items.Remove(lvi);
}
"the flow between the views is handled" 如何取决于您尚未描述的当前导航实现。