Из документации видно, что в начале этого процесса событие не генерируется.Поэтому я предлагаю (если это возможно), чтобы вы написали что-то вроде следующего и использовали его во всей полноте:
public static class AssemblyLoader
{
public delegate void LoadDelegate(string path);
public void LoadAssembly(string path)
{
if(OnPreLoad != null)
OnPreLoad(path);
// load assembly here
} // eo LoadAssembly
public event LoadDelegate OnPreLoad;
} // eo AssemblyLoader
Затем вы можете использовать этот метод в любом месте своего кода, когда вы хотите загрузить сборку.
Очевидно, что здесь, в этом делегате, может потребоваться использовать надлежащий объект (а не только путь), чтобы предотвратить загрузку сборки или сделать что-то другое.