This isn't the best solution from a design standpoint, but it should get your application working and then you can figure out how to do a bit cleaner design.
Inside your Window1 class add this:
public delegate void FileBoxDelegate(string filename);
void AppendToFileBox(string filename)
{
fileBox.Text += "File: " + fileName + " Successfully Copied!" + '\n';
}
public void UpdateFileBox(string filename)
{
BeginInvoke(new FileBoxDelegate(AppendToFileBox), filename);
}
After the statement
Window1 threadOne = new Window1();
Add this:
threadOne.UIWindow = this;
In the DeleteStuff class:
Add a property to hold a reference to the Window1 class. (I used a member variable for brevity)
public Window1 m__uiWindow = null;
Then replace the Application.Current.Dispatcher.BeginInvoke stuff with:
m_uiWindow.UpdateFileBox(fileName);
I think that'll do it.