Я пытаюсь разработать редактор, такой как редактор VS, где я использую такие компоненты, как FTP, TelNet (где вы перетаскиваете конструктор и связываете их друг с другом, изменяя свойства в PropertyGrid и т. Д.), А затем выполняете. Хорошая идея использовать MEF для сканирования всех DLL-файлов с интерфейсом IComponent, а затем использовать отражение, чтобы получить исходный объект из dll-s. ПримерИспользование MEF в редакторе
[Export(typeof(ICOmponent))]
[MetadataExport("Name", "FTP")]
public class FTP : ICOmponent
{
public string Server { get; set; }
public void Start()
{
....ConectTOServer(Server);
}
}
[Export(typeof(ICOmponent))]
[MetadataExport("Name", "MessageBox")]
public class MessageBox : ICOmponent
{
public string Message { get; set; }
public void Start()
{
System.Windows.Forms.MessageBox.Show(Message);
}
}
public interface ICOmponent
{
void Start();
}
Или другой способ, чтобы получить исходный объект из MEF из IComponent как из метаданных .. потому что PropertyGrid СВАО реального объекта для отображения свойств для FTP-сервера и от MessageBox сообщения. Извините за мой плохой английский.
Выглядит хорошо. Но в чем вопрос? Есть ли какая-то часть, которую вы не знаете, как ее реализовать? Была ли проблема с тем, как свойствоgrid показывает объекты? Еще одна проблема? –