在我的Windows手机应用程序中,我有一个数据绑定列表框。我的数据模板包含许多文本块。
如果我点击并按住任何文本块,则会出现上下文菜单。但是,如果我点击并按住列表框项目的空白区域,菜单就不会出现。
例如。如果我选择下面提到的图像中的任何文本区域,则会出现菜单。如果我一直按住名称和日期之间的区域,菜单就不会出现。
如果我在特定列表框项目中保留任何位置,我希望显示菜单。
注意:我包含了上下文菜单
我的xaml代码如下:
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderThickness="0.25,0.25,0.25,0.25" BorderBrush="{StaticResource PhoneForegroundBrush}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto" />
<RowDefinition Height="auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu >
<toolkit:MenuItem
Header="delete"
Click="Delete" />
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
<TextBlock
HorizontalAlignment="Left"
TextWrapping="NoWrap"
Grid.Row="0"
Grid.ColumnSpan="2"
Text="{Binding TEXT}"
VerticalAlignment="Top"
FontWeight="Bold"/>
<TextBlock
HorizontalAlignment="Left"
TextWrapping="NoWrap"
Grid.Row="1"
Grid.Column="0"
Text="{Binding USERNAME}"
VerticalAlignment="Top"
FontSize="{StaticResource PhoneFontSizeSmall}"/>
<TextBlock
HorizontalAlignment="Right"
TextWrapping="NoWrap"
Grid.Row="1"
Grid.Column="1"
Text="{Binding Path=DATE}"
VerticalAlignment="Top"
FontSize="{StaticResource PhoneFontSizeSmall}" />
</Grid>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
有什么方法可以解决这个问题吗?
谢谢。
答案 0 :(得分:6)
将Background="{StaticResource TransparentBrush}"
添加到DataTemplate中的网格。