locked
Windows10 ユニバーサルアプリでドラッグアンドドロップができない RRS feed

  • 質問

  • お世話になります。

    只今、Windows8.1のアプリからWindows10 ユニバーサルアプリへの変換を試みています。
    タイトルの件なのですが、Windows10上のユニバーサルアプリでドラッグアンドドロップができない現象が出ています。

    そもそもWindows10のユニバーサルアプリでドラッグアンドドロップができるかを調べているのですが、
    下記のURLのサンプルソースを使用し、Windows10上でWindows8.1アプリではドラッグアンドドロップはできました。
    しかし、そのソースをWindows10のユニバーサルアプリへ変換し試したところ、ドラッグはできるのですが、
    ドロップができません。ドラッグした際に、禁止マークが付いています。
    ちなみに、リオーダーはできます。
    https://code.msdn.microsoft.com/windowsapps/XAML-ListView-and-GridView-6bd77f71

    何か見落としている点がございましたら、
    また、Windows10ユニバーサルアプリでドラッグアンドドロップができるサンプルのURLがございましたら
    ご教示下さい。

    環境:
     Windows 10 Enterprise Insider Preview Build 10159
     Windows 10 SDK Build 10158
     Microsoft Visual Studio Community 2015 RC(Version 14.0.22823.1 D14REL)

    2015年7月3日 5:12

回答

  • こんにちは、サンプルは提示できませんが、

    DragOverイベントハンドラー時に以下のように指定すれば正常に動作すると思います。

            private void Grid_DragOver(object sender, DragEventArgs e)
            {

               // 移動の場合(コピーなどの場合はDataPackageOperation.Copyなどに変更する)

                e.AcceptedOperation = Windows.ApplicationModel.DataTransfer.DataPackageOperation.Move;
                e.Handled = true;
            }

    UWPはアプリがいのファイルなどもドロップできるので注意してください。

    • 回答としてマーク Tom-sansan 2015年7月6日 16:04
    2015年7月5日 0:20

すべての返信

  • こんにちは、サンプルは提示できませんが、

    DragOverイベントハンドラー時に以下のように指定すれば正常に動作すると思います。

            private void Grid_DragOver(object sender, DragEventArgs e)
            {

               // 移動の場合(コピーなどの場合はDataPackageOperation.Copyなどに変更する)

                e.AcceptedOperation = Windows.ApplicationModel.DataTransfer.DataPackageOperation.Move;
                e.Handled = true;
            }

    UWPはアプリがいのファイルなどもドロップできるので注意してください。

    • 回答としてマーク Tom-sansan 2015年7月6日 16:04
    2015年7月5日 0:20
  • お世話になっております。

    頂いたコードでドロップのイベントが拾えるようになりました。ありがとうございました。

    また、最後の注意事項もありがとうございます。

    2015年7月6日 16:04