Я полагаю, FileOpenCore - это имя, которое автор дал методу, который фактически открывает ваши файлы.Замените его любым имеющимся у вас методом, который берет имя файла и открывает его.
Метод InsertFile должен вызываться (возможно, в вашем FileOpenCore) всякий раз, когда файл успешно открывается.RemoveFile должен быть вызван, если вы попытались открыть файл, но это не удалось.Вы не хотите, чтобы файлы, которых больше не было в вашем списке последних файлов, например.
Итак, если вы определили свой RecentFileList так, как это сделал автор:
<common:RecentFileList x:Name="RecentFileList" />
И выподключите обработчик кликов, как он это делал в конструкторе вашего окна:
RecentFileList.MenuClick += ( s, e ) => FileOpenCore( e.Filepath );
Ваш FileOpenCore (или как вы хотите его называть) может выглядеть примерно так (псевдокод):
private void FileOpenCore(string filename)
{
try
{
// read your file
// and do whatever processing you need
// ...
// if open was successful
RecentFileList.InsertFile(filename);
}
catch (Exception e)
{
// opening the file failed - maybe it doesn't exist anymore
// or maybe it's corrupted
RecentFileList.RemoveFile(filename);
// Do whatever other error processing you want to do.
}
}