Ya Mark has already detected Problem what you have did while you posting your code which is about pasting duplicate code.
and this is code you use in try catch and the problem is in this code is you invoke ShowDialog() method two times thats why it appear for two times.
SaveFileDialog SaveDialogbox = new SaveFileDialog();
SaveDialogbox.FileName = Locations.Text;
SaveDialogbox.Filter = "Text and CSV Files(*.txt, *.csv)|*.txt;*.csv|Text Files(*.txt)|*.txt|CSV Files(*.csv)|*.csv|All Files(*.*)|*.*";
SaveDialogbox.FilterIndex = 1;
SaveDialogbox.RestoreDirectory = true;
DialogResult Dialogresult1 = SaveDialogbox.ShowDialog();
if (SaveDialogbox.ShowDialog()==DialogResult.OK)
{
DataExport();
Application.DoEvents();
}
Remove this one
DialogResult Dialogresult1 = SaveDialogbox.ShowDialog();