2013-05-17 38 views
0

我有一個使用XAML/C#的Windows Phone 8應用程序。我的應用程序有一個ItemsControl,它依賴於數據模板。我DataTemplate如下所示:Windows Phone上下文菜單項文本不出現

<DataTemplate x:Key="myTemplate"> 
    <Grid Margin="0,0,0,8"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition /> 
     <ColumnDefinition Width="Auto" /> 
    </Grid.ColumnDefinitions> 

    <Grid VerticalAlignment="Center"> 
     <Grid.RowDefinitions> 
     <RowDefinition Height="Auto" /> 
     <RowDefinition Height="Auto" /> 
     </Grid.RowDefinitions> 

     <TextBlock Text="{Binding DisplayName}" TextWrapping="NoWrap" Style="{StaticResource PhoneTextLargeStyle}" TextTrimming="WordEllipsis" > 
     <toolkit:ContextMenuService.ContextMenu> 
      <toolkit:ContextMenu> 
      <toolkit:MenuItem x:Name="customerMenuItem" Foreground="White" Header="View Customer Profile" Click="customerMenuItem_Click" Tag="{Binding Path=CustomerName}" /> 
      </toolkit:ContextMenu> 
     </toolkit:ContextMenuService.ContextMenu> 
     </TextBlock> 
     <TextBlock Text="{Binding Summary}" TextWrapping="NoWrap" Grid.Row="1" Style="{StaticResource PhoneTextSmallStyle}" /> 
    </Grid> 

    <StackPanel Orientation="Horizontal" Grid.Column="1"><!-- Stuff here --></StackPanel> 
    </Grid> 
</DataTemplate> 

如下所示這DataTemplate在我的XAML的主要部分引用:

<Grid x:Name="ContentPanel" Grid.Row="1" Grid.ColumnSpan="2" Margin="12,0,12,0"> 
    <ScrollViewer> 
    <ItemsControl x:Name="myItemsControl" ItemTemplate="{StaticResource myTemplate}" ItemsSource="{Binding Customers}"> 
     <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <StackPanel Orientation="Vertical" /> 
     </ItemsPanelTemplate> 
     </ItemsControl.ItemsPanel> 
    </ItemsControl> 
    </ScrollViewer> 
</Grid> 

請注意,「工具箱」命名來自CLR的命名空間: Microsoft.Phone.Controls;裝配= Microsoft.Phone.Controls.Toolkit。當我握住手指(或鼠標)在TextBlock上時,會出現一個上下文菜單。但是,我從來沒有看到「查看客戶資料」的字樣。我只看到一個代表上下文菜單的塊框。我知道這個項目在那裏。我知道,因爲customerMenuItem_Click事件成功激發。我在那裏有一個MessageBox,它顯示了標籤的價值。這個價值永遠是正確的。出於某種原因,雖然菜單項文本沒有出現。我究竟做錯了什麼?

回答

0

你把Foreground = "White"。上下文菜單在白色背景上。這就是爲什麼你看不到你的菜單項。