ВОПРОС: Есть ли способ экспортировать DataTable в XML, когда в DataTable есть столбец типа Control. Я получаю сообщение о том, что элементы управления не могут быть сериализованы. Я прочитал всю концепцию сериализации и DataContacts из различных источников, но я все еще думаю, что может быть гораздо более легкое решение под рукой, которое я не рассматриваю.
предыстория:
У меня есть приложение на C #, которое я создаю, элементы управления приложения перераспределяются между различными представлениями (т. Е. Когда вы загружаете одно «представление», приложение использует одни и те же объекты, эти объекты затем выполняют разные задачи, как, например, для объекта кнопки с именем «abutton» может использоваться для отправки формы в одном представлении, но в другом представлении она может использоваться для сохранения документа). Чтобы сделать это еще более усложненным, элементы управления отключаются, когда они используются, но только в этом конкретном «представлении», чтобы не дать мне сделать одно и то же дважды. Элементы управления и их включение отслеживаются с помощью DataTable, который я создаю для каждого представления. Как только представление выбрано, приложение загружает его, а затем использует DataTable для этого представления, чтобы определить, какие элементы управления были отключены. Таблицы данных для каждого представления имеют следующие столбцы:
ObjectName - Имя объекта
Control - это тип Control, и фактический объект хранится в этом столбце
Enabled - логическое значение, которое отражает, включен ли объект, по умолчанию - true
Имея столбец «Тип элемента управления» и сохраняя объект в нем, при обходе таблицы DataTable намного проще включить / отключить элементы управления для этого конкретного представления. Я знаю, что могу извлечь столбец «Управление» и обойти его, но я на самом деле не хочу этого делать, если есть простой способ экспортировать файл XML.