2016-12-30 101 views
0

我將拖動一個listview項目來放置一個框來處理某些東西。 在這種情況下,我無法獲得選定的listview項目。 所選索引/項目始終爲-1/null。UWP ListView拖放

注意:使用SelectionChanged時,我可以得到選定的listview項目。 但無法獲取放置事件。請指教。

XAML:

 
&ltListView x:Name="lvMaster" CanDragItems="True" SelectionChanged="lvMaster_SelectionChanged" > 

&ltGrid AllowDrop="True" Drop="Drop_Event" DragOver="DragOver_Event">   
</Grid> 

C#:

private void Drop_Event(object sender, DragEventArgs e) 
{ 
lvObj = new ListView(); 
ListView)sender; 
} 

private void DragOver_Event(object sender, DragEventArgs e) 
{ 
AcceptedOperation = DataPackageOperation.Copy;   
DragUIOverride.IsCaptionVisible = true; 
DragUIOverride.IsContentVisible = true; 
} 
+0

你想從ListView中拖動項目到網格,並想知道它是什麼?我理解正確嗎?你爲什麼需要選擇項目? – RTDev

+0

是的。正確。我需要一個選定的項目。 – Saravana

+0

因爲我想傳遞所選項目的ID。 – Saravana

回答

1

您可以爲您的ListView註冊DragItemsStarting eventDragItemsCompleted event,然後在其處理方法,你可以讓你拖的所有項目。

private void SourceListView_DragItemsCompleted(ListViewBase sender, DragItemsCompletedEventArgs args) 
{ 
    var cc = args.Items; 
} 

請參考官方Drag and Drop sample瞭解更多詳情。

+0

@saravana你根據我的建議解決了你的問題嗎? –