我在我的应用程序中使用长列表选择器,我已经在其中创建了组和组头。 现在,我在组头中添加一个按钮,并希望按钮打开新页面。 但是,当我点击按钮时,它会导航到新页面并打开“跳转列表”。单击按钮时我不想要跳转列表。 我找到了这个link,但是,这里没有明确的答案。
有没有办法在“组头”上禁用“点击”事件并在需要时调用?
我的代码是:
XAML:
<DataTemplate x:Key="groupHeaderTemplate">
<Border HorizontalAlignment="Stretch" Height="70" Background="{Binding Converter={StaticResource BackgroundConverter}}" Margin="6">
<Grid HorizontalAlignment="Stretch" Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Title}"
FontSize="40" Padding="6"
VerticalAlignment="Center"
Foreground="{Binding Converter={StaticResource ForegroundConverter}}" />
<Button Content="addNew" Name="addNew_btn" Grid.Column="1" Click="addNew_btn_Click_1" Tag="{Binding transType}" />
</Grid>
</Border>
</DataTemplate>
CS:
private void addNew_btn_Click_1(object sender, RoutedEventArgs e)
{
NavigationService.Navigate(new Uri("/Expense.xaml", UriKind.Relative));
}
答案 0 :(得分:5)
如果我理解正确,您需要在点击按钮外部时打开跳转列表,并在点击按钮时打开另一页。要做到这一点,您只需注册Tap事件,而不是单击按钮,然后单击Tap事件处理程序集e.Handled = true;
,这将阻止事件冒泡并按下按钮时打开跳转列表。