1
我目前正在使用Windows Phone 8開發應用程序。我在xaml中創建了一個列表框,併爲該列表框中的所有項目添加了一個上下文菜單。現在我的要求是基於某些條件來顯示和隱藏上下文菜單。如何隱藏Windows Phone 8中特定列表項的上下文菜單?
我有一個delete_flag參數,如果delete_flag的值是1那麼我想顯示該項目的上下文菜單,否則如果它是0則隱藏context_menu。
任何人都可以建議,是否有可能做到這一點的Windows Phone 8上下文菜單控制?
我的列表框XAML代碼是如下:
<ListBox x:Name="myListBox"
toolkit:TiltEffect.IsTiltEnabled="True"
HorizontalContentAlignment="Center"
ItemContainerStyle="{StaticResource GenericListBoxContainerStyle}"
SelectedItem="{Binding}"
SelectionChanged="myreportsListBox_SelectionChanged"
>
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Margin="0,1,0,1"
Background="White">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Ellipse Grid.Column="0"
Height="60"
Width="60"
Margin="7">
<Ellipse.Fill>
<ImageBrush ImageSource="{Binding image, Converter={StaticResource Imageconverter}}"></ImageBrush>
</Ellipse.Fill>
</Ellipse>
<StackPanel Grid.Column="1"
Margin="0,8,0,8">
<TextBlock Margin="2"
Style="{StaticResource HeaderContentStyle}">
<Run Text=""/>
<Run Text="{Binding id}"/>
<Run Text="-"/>
<Run Text="{Binding name}"/>
</TextBlock>
<TextBlock Margin="2"
Style="{StaticResource DescriptionContentStyle}">
<Run Text=""/>
<Run Text="{Binding date}"/>
<Run Text="-"/>
<Run Text="{Binding status}"/>
</TextBlock>
</StackPanel>
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu Name="servicerequestContextMenu"
IsZoomEnabled="False"
>
<toolkit:MenuItem Header="Delete"
Name="DeleteMenuBtn"
Click="DeleteMenuBtn_Click"
CommandParameter="{Binding}" />
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
delete_flag的價值是在新的財產json和json由服務器發送,所以我不能更改爲true或false。 –
那麼爲什麼你不只是在項目模型中添加另一個屬性 –
是的,這些幫助我在一定程度上,但現在上下文菜單打開,但用戶不能點擊刪除按鈕,但有可能上下文菜單不打開「delete_flag = 0」? –