title: Issue using IFileOperation interface
body: <p>I want my app to delete a bunch of files using the <a href="https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-ifileoperation?redirectedfrom=MSDN" rel="nofollow noreferrer">IFileOperation interface</a>.</p>
  <p>I found <a href="https://searchcode.com/file/67641505/Src/Droppy/Utility/FileOperation.cs/" rel="nofollow noreferrer">this</a> code and I have added it as class into my project.</p>
  <p>Then I use it like this:</p>
  <pre><code>public static void DeleteFiles(string data_path)
  {
      string[] files = Directory.GetFiles(data_path, &quot;*.*&quot;, SearchOption.AllDirectories);
  
      FileOperationG1 op = new FileOperationG1();
      op.From = files;
      op.Operation = FILEOP_CODES.FO_DELETE;
      op.Flags = FILEOP_FLAGS.FOF_NOCONFIRMATION;
      op.Flags = FILEOP_FLAGS.FOF_ALLOWUNDO;
      op.Execute();
  }
  </code></pre>
  <p>And I get this error:</p>
  <pre><code>System.ArgumentNullException: Value cannot be null.
  Parameter name: window
     at System.Windows.Interop.WindowInteropHelper..ctor(Window window)
     at ***.Classes.FileDir.FileOperationG1.Execute() in C:\Users\***\Desktop\Project Name\Classes\FileDir.cs:line 458
  </code></pre>
  <p>At line 458 is this part of code: <code>WindowInteropHelper wih = new WindowInteropHelper(ParentWindow);</code></p>
  <p>Any idea why is this happening?</p>