2016-12-30 26 views
0

リストビューアイテムをドラッグして、何かを処理するボックスをドロップします。 この場合、選択したリストビューアイテムを取得できません。 選択されたインデックス/アイテムは常に-1/nullを返します。UWP ListViewドラッグアンドドロップ

注:SelectionChangedを使用する場合、選択したリストビュー項目を取得できます。 ただし、ドロップイベントを取得できません。お知らせ下さい。

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からGridにアイテムをドラッグして、アイテムを知りたいと思っていますか?私はそれを正しく理解していますか?なぜセレクトアイテムが必要ですか? – RTDev

+0

はい。正しい。私は選択したアイテムが必要です。 – Saravana

+0

選択したアイテムのIDを渡したいので。 – Saravana

答えて

1

あなたは、そのハンドラメソッドでは、あなたがドラッグしたすべてのアイテムを得ることができ、あなたのリストビューのためDragItemsStarting eventまたはDragItemsCompleted eventを登録することができます。

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

詳細については、公式Drag and Drop sampleを参照してください。

Please

+0

@サラバナ私の提案にしたがってあなたの質問を解決しましたか? –

関連する問題