protected override void OnExecute(object param)
{
IUnityContainer container = LifetimeService.Instance.Container;
IDataService service = container.Resolve<IDataService>();
IUIController controller = container.Resolve<IUIController>();
//Get current filetype from loaded dataset. This is file extension and Filter
DataSource actds = controller.GetActiveDocument();//06Nov2012
if (actds == null)
return;
string datasetName = "" + actds.Name;//uadatasets$lst$
//string datasetName = "uadatasets$lst$" + controller.GetActiveDocument().Name;
//Also try to get the filename of currently loaded file. This is FileName.
string extension = controller.GetActiveDocument().Extension;
string filename = controller.GetActiveDocument().FileName;
SaveFileDialog saveasFileDialog = new SaveFileDialog();
saveasFileDialog.Filter = FileNameFilter;
//CheckBox cbox = new CheckBox();
//saveasFileDialog.FileName = filename;//////
Window1 appwin = LifetimeService.Instance.Container.Resolve<Window1>();
bool? output = saveasFileDialog.ShowDialog(appwin);//Application.Current.MainWindow);
if (output.HasValue && output.Value)
{
service.SaveAs(saveasFileDialog.FileName, controller.GetActiveDocument());// #0
controller.GetActiveDocument().Changed = false;//21Mar2014 during close it should not prompt again for saving
//Close current Dataset on whic Save As was run
FileCloseCommand fcc = new FileCloseCommand();
fcc.CloseDataset(false);
//Open Dataset that was SaveAs-ed
FileOpenCommand fo = new FileOpenCommand();
fo.FileOpen(saveasFileDialog.FileName);
}
}