0

リストボックスにコンテキストメニューを追加したい。しかし、リストボックスアイテムを保持しても、何も起こりません。ありがとう..

このコードは私のリストボックスの定義です。リストボックスにコンテキストメニューを追加しました。

<ListBox Grid.Row="1" Name="chList" ItemsSource="{Binding Ch.Texts}" SelectionChanged="TextChanged" Style="{StaticResource ListOfText}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <toolkit:ContextMenuService.ContextMenu>
                <toolkit:ContextMenu Name="ContextMenu">
                    <toolkit:MenuItem Name="Edit" Header="Edit" Click="Edit_Click"/>
                    <toolkit:MenuItem Name="Delete" Header="Delete" Click="Delete_Click"/>
                </toolkit:ContextMenu>
            </toolkit:ContextMenuService.ContextMenu>
        </DataTemplate>
    </ListBox.ItemTemplate>
</Listbox>

styles.xamlで

<Style x:Key="ListOfText" TargetType="ListBoxItem">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ListBoxItem">
                <Border x:Name="RootElement" Padding="{StaticResource PhoneBorderThickness}">
                    <Grid>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="10" />
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>
                        <Border Grid.Column="0" Background="{StaticResource PhoneAccentBrush}"
                                    Opacity="{Binding IsRead,Converter={StaticResource opacityConverter}}" />
                        <Grid MinHeight="60" Grid.Column="1">
                            <Grid.RowDefinitions>
                                <RowDefinition Height="auto" />
                                <RowDefinition Height="auto" />
                            </Grid.RowDefinitions>
                            <TextBlock Grid.Row="0" Text="{Binding Title}" TextWrapping="Wrap"
                                           Style="{StaticResource PhoneTextTitle3Style}" />
                            <Grid Grid.Row="1">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="auto" />
                                    <ColumnDefinition Width="*" />
                                </Grid.ColumnDefinitions>
                                <TextBlock Grid.Column="0" Text="{Binding PbDate, Converter={StaticResource dateConverter}}"
                                               VerticalAlignment="Center" TextWrapping="Wrap" Style="{StaticResource PhoneTextSmallStyle}" />
                                <Image Grid.Column="1" Height="{StaticResource PhoneFontSizeNormal}" HorizontalAlignment="Left"
                                           Visibility="{Binding IsStared,Converter={StaticResource visibilityConverter}}" Source="/Toolkit.Content/favs.png" />
                            </Grid>
                        </Grid>
                    </Grid>
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

mysolutionのStyles.xaml...しかし、この問題を解決できません。

ありがとう...

4

1 に答える 1

0

アイテムDataTemplateを に設定していますContextMenuService.ContextMenuが、実際のコンテンツはありません。実際にそこにコンテンツを表示する必要があります。また、リストに項目はありますか?

を 1 つのメイン テンプレートに移動しContextMenuService.ContextMenuます。現在、それを分割しています (理由は不明です)。DataTemplateコントロール自体の宣言を削除し、ListBox定義済みのスタイルを使用します。

于 2013-02-19T20:17:47.723 に答える