0

ListBoxDragDropTarget を使用していますが、項目をドラッグ アンド ドロップすると、ListBox にバインドされている ObservableCollection は項目の順序を変更しません。

 <controlsToolkit:ListBoxDragDropTarget AllowDrop="True"
                                               Grid.Row="1"
                                               HorizontalContentAlignment="Stretch"             
                                               VerticalAlignment="Top"
                                               Margin="0,10,8,10"
                                               ItemDragCompleted="ListBoxDragDropTarget_ItemDragCompleted_1"
                                               BorderThickness="0">
                  <ListBox x:Name="servicesListBox" ItemsSource="{Binding ServiceCollection}" 
                           ScrollViewer.HorizontalScrollBarVisibility="Disabled"
                           SelectionChanged="servicesListBox_SelectionChanged_1"
                           SelectedItem="{Binding SelectedService, Mode=TwoWay}" 
                           Margin="0,102,0,0" Background="#FF040404"
                           SelectionMode="Extended"
                           Foreground="White" Width="800" HorizontalAlignment="Center" BorderBrush="#FF040404" Height="340" VerticalAlignment="Top" >
                      <ListBox.ItemsPanel>
                          <ItemsPanelTemplate>
                            <controlsToolkit:WrapPanel />
                          </ItemsPanelTemplate>
                      </ListBox.ItemsPanel>
                      <ListBox.ItemTemplate>
                          <DataTemplate>
                            <StackPanel Width="250" Margin="4" Orientation="Horizontal">                                    
                                  <TextBlock Text="{Binding Title}" Foreground="{Binding IsDesactivated, Converter={StaticResource OnlineColorConverter}}"
                                            HorizontalAlignment="Left" VerticalAlignment="Center" Margin="2,0,0,0" Width="190" />
                            </StackPanel>
                          </DataTemplate>
                      </ListBox.ItemTemplate>
                  </ListBox>
            </controlsToolkit:ListBoxDragDropTarget>
4

1 に答える 1

0

ObservableCollection 内のアイテムが異種である可能性があります。これは、多態性を使用する場合に発生します。たとえば、ObservableCollection があるが、実際には MyClass 型の要素を保持している場合です。これは ListBoxDragDropTarget のバグですが、このコントロールは「実験的」品質レベルにあります。

2 つの可能な修正:

于 2012-08-21T12:16:35.070 に答える