У меня есть 10 записей данных в DataTable, который имеет 3 поля: «Foo», «Bar» и «Baz».
Если я подключу этот провод к DataGridView, я увижу 10 строк и 3 столбца, а в заголовках столбцов отображаются имена полей.
Я задаюсь вопросом, насколько легко обратить строки и столбцы так, чтобы с одинаковыми данными я получил 3 строки и 10 столбцов, а имена полей отображаются в заголовках строк.
Я могу сделать некоторые вещи вручную, например, переопределить метод OnPaint и нарисовать имена полей непосредственно в ячейках заголовка строки, но я ищу что-то более автоматизированное.
Опять же, есть предложение поменять значения вручную, но если я не сделаю все значения Strings, это не сработает. 3 столбца в таблице данных - Foo, Bar и Baz типов int, float и string просто не будут транспонироваться.
Даже если я справился со всеми этими ручными изменениями, в моих сетках данных есть столбцы CheckBox, столбцы ComboBox - такого аналога строки не существует - нет строки CheckBox или строки ComboBox. Там, где мне сейчас нужно просто сказать компилятору «Добавить ComboBoxColumn», мне придется переписать, чтобы каждая ячейка была сгенерирована индивидуально.
В идеале я хотел бы, чтобы TransposableDataGridView предоставлял все функциональные возможности DataGridView с дополнительным bool-свойством «Transposed». Таким образом, я мог оставить весь свой код в точности таким, какой он есть - мне не пришлось бы ничего менять, кроме типа сетки.
Если ничего подобного не существует, возможно, мне просто нужно пойти и написать это. (Должен занять у меня год или около того! :)