【发布时间】:2017-04-24 01:35:44
【问题描述】:
<ListView
x:Name="ListViewPoducts"
SelectionMode="Single"
ItemsSource="{Binding ProductGroups}"
SelectedItem="{Binding SelectedProductGroup}"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Auto"
Background="{StaticResource NouvemLightBackgroundBrush}">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Vertical" />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
<Setter Property="Width" Value="Auto"/>
<Setter Property="Height" Value="Auto"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListViewItem">
<Border Background="Transparent" >
<Button Name="button" Style="{StaticResource StyleButtonTouchscreenMenu}" IsHitTestVisible="False">
<Grid>
<TextBlock Text="{Binding Name}"
FontSize="{Binding Source={x:Static global:ApplicationSettings.TouchscreenMenuButtonFontSize}}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
TextAlignment="Center"
TextWrapping="Wrap" />
</Grid>
<i:Interaction.Triggers>
<i:EventTrigger EventName="PreviewMouseUp">
<command:EventToCommand Command="{Binding GroupSelectedCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="button" Property="Background" Value="{StaticResource NouvemSecondaryMainBrush}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListView.ItemContainerStyle>
<ListView.Resources>
<Style TargetType="{x:Type ScrollBar}" BasedOn="{StaticResource StyleScrollBarTouchscreenNarrow}"/>
</ListView.Resources>
</ListView>
你好,
我正在尝试将事件添加到列表视图控件模板中包含的按钮的命令触发器。我们有一个在客户端触摸屏上运行的应用程序,它对按钮按下过于敏感。我想处理一个按钮 PreviewMouseUp 事件来解决这个问题(目前,当他们按下按钮时,它也会按下按钮下方的内容,例如按下按钮两次)
但是,我的视图模型中没有命中命令处理程序代码。
任何帮助将不胜感激。
【问题讨论】: