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 = LocalisationParser
                                 .ParseLocalizationForCompare(this);
                string newText = LocalisationParser.
                                 ParseLocalizationFileForCompare(info.Filename);
                SideBySideDiffModel model = new SideBySideDiffBuilder(
                    new Differ()).BuildDiffModel(oldText, newText);
                new ViewModelLocator().CodeComparator.DiffModel = model;
                new CompareCode().ShowDialog();
            }
        }