public async void CheckForChanges()
        {
            DataContract.FileInfo info = FileInfo;
            //check the fileinfo data
            if (info == null)
            {
                return;
            }
            //If the file exists
            if (!File.Exists(info.Filename))
            {
                return;
            }
            //If the file was modified after the last modification date
            if (File.GetLastWriteTime(info.Filename) <= info.LastModifiedDate)
            {
                return;
            }
            //Then we can show a message
            MessageDialogResult Result = await(new ViewModelLocator())
                                         .Main.ShowFileChangedDialog();

            if (Result == MessageDialogResult.Affirmative)
            {
                string oldText            = EventParser.ParseEventForCompare(this);
                string newText            = EventParser.ParseEventScriptForCompare(info.Filename);
                SideBySideDiffModel model = new SideBySideDiffBuilder(
                    new Differ()).BuildDiffModel(oldText, newText);
                new ViewModelLocator().CodeComparator.DiffModel = model;
                new CompareCode().ShowDialog();
            }
        }