Я ищу бесплатный / платный компонент для .NET Windows Forms, который позволяет визуализировать (в виде таблицы) один листинг, содержащий различные типы данных. Я также хотел бы настроить любой из встроенных компонентов .NET, чтобы сделать то же самое.
У меня есть набор данных, состоящий из 4 различных типов данных, каждый из которых реализует общий интерфейс. Я могу установить источник данных DataGridView в виде списка объектов интерфейса, и я получаю хорошо выглядящую равномерную сетку. Однако я хочу развернуть каждую строку для просмотра фактических значений типов данных базового класса.
Вот пример набора данных:
public interface ICommonData {
long ID {get;}
DateTime Date {get;}
}
public class ClassA : ICommonData {
public long ID {get;}
public DateTime Date {get;}
public string Description {get;set;}
public string Title {get;set;}
}
public class ClassB : ICommonData {
public long ID {get;}
public DateTime Date {get;}
public long SomeReferenceNumber {get;set;}
public string SomeName {get;set;}
}
Используя эти данные, я привязал бы сетку к списку, который содержал смесь объектов ClassA и ClassB. Что мне нужно, так это возможность развернуть любую из строк и просмотреть запись со всеми полями ClassA или ClassB в зависимости от типа данных, привязанного к этой строке.
Я знаю, что то, что мне нужно, возможно с помощью объекта Microsoft WPF DataGrid (с RowDetailSelector), но я бы предпочел не использовать WPF для такого рода вещей, если мне это не нужно. Еще одно важное замечание: все это только для чтения. Мне не нужно каким-либо образом редактировать эти данные. Мой вариант использования состоит в том, что у меня есть библиотека, которая подключена ко многим различным типам записей журнала ошибок, и мне нужен способ визуализировать все эти различные типы записей ошибок в одном табличном формате (при этом я могу видеть все поля на всех разные типы данных).
Любая помощь будет оценена!