UAC - and particularly User Interface Privilege Isolation - prevents lower-privileged applications from sending messages to higher-privileged applications.
Windows Explorer runs with normal privileges. If you launch your application with elevated privileges, Windows Explorer cannot send messages to it, so you cannot drag and drop from Explorer to your elevated application.
You can allegedly P/Invoke the
ChangeWindowMessageFilterEx function[
^] to allow specific messages through. But this isn't recommended for drag and drop, due to the messages it uses.
You can't run Windows Explorer as an elevated process, so you're left with using a different file manager running elevated, or using a file dialog launched from an elevated application. For example, if you run notepad elevated and try to open a file, you should be able to drag from the "open file" dialog to your application.
Q: Why Doesn’t Drag-and-Drop work when my Application is Running Elevated? – A: Mandatory Integrity Control and UIPI | Microsoft Docs[
^]