| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > .NET для новичков > Сохранение параметров объектов на C# в xml-файл |
| Автор: garfna 28.3.2009, 22:45 |
| Как сохранить параметры(свойства и методы) динамически создаваемых объектов(кнопок и т.д.) на форме в xml-файл без сериализации объектов? |
| Автор: Partizan 29.3.2009, 00:28 |
| garfna, а методы зачем сохранять? сохранить в XML можно используя XML-сериализацию...гуглите XmlSerializer |
| Автор: garfna 29.3.2009, 00:56 |
| Вообщем мне нужно создать подобие конструктора форм визуал студио, только когда пользователь запустит мою программу, набросает кнопок и других объектов, он должен кроме их свойств в PropertyGrid, установить ещё и определённые методы, которые бы сразу срабатывали. |
| Автор: -Mikle- 29.3.2009, 09:56 |
А почему сериализация не подходит вам? Не вижу ограничений для такой задачи. Если не хотите автоматом, то делайте ручками: XmlWriter/XmlReader/XmlDocument Если мы Вас не поняли, то давайте больше сведений. |
| Автор: Partizan 29.3.2009, 10:38 |
| garfna, что значит "установить определённые методы"? Выбрать из предопределённых? или сам должен код обработчиков написать? |
| Автор: garfna 29.3.2009, 12:30 |
| Давайте я покажу на примере) Например, для кнопки в методах, пользователь должен выбрать "Запустить таймер", связать эту кнопку с TextBox,где должен задать время. При нажатии данной кнопки должен пойти отсчёт времени в TextBox. |
| Автор: garfna 29.3.2009, 19:07 |
| Моя программа должна быть рассчитана на пользователя, не знающего программирования. Я хотела, чтобы пользователь мог через PropertyGrid устанавливать свойства для кнопок и других объектов, а через некоторые свойства можно было бы определить методы. Тогда бы и сериализацию можно было б сделать) |
| Автор: -Mikle- 29.3.2009, 19:36 |
Диапазон функционала методов каков? Фиксирован? То есть, например, у пользователя есть список из 100 заранее предустановленных методов? Или у пользователя есть свобода для творчества... Я все виду к тому, что вы неверно размышляете... Если набор методов у вас предустановлен, то не нужно (как вы говорите) сериализовывать методы, нужно просто запомнить какой метод на какое событие и какого элемента назначен. Для оказания более полноценной помощи, вам придется подробнее расписать, что вы делаете, что будут делать созданные пользователем формы, какого они плана вобще, что может пользователь назначать на события кнопок и других элементов управления. Описание задачи (для вас самой), является важным шагом на пути к реализации задачи... |
| Автор: garfna 29.3.2009, 20:02 |
| Задача заключается в следующем: Существует плата знакогенерации, позволяющая сформировать титры для спортивных трансляций. Необходимо придумать пользовательский интерфейс, позволяющий управлять этой платой. Интерфейс должен быть расчитан на пользователя не имеющего специальных знаний и навыков в области разработки ПО. Поэтому диапазон функционала методов фиксирован)) Для любого вида спорта пользователь может создать специальный шаблон, куда расположит кнопки, текстбоксы и многое другое для управления страницами в плате, настроит кнопки под определённые функции, свяжет их с нужными объектами и т.д. Созданные шаблоны должны сохраняться в хмл-файл, ну считываться из хмл-файла, создавая форму с объектами. Т.е. задача пользователей заключается только в настройке объектов формы и всё... |
| Автор: diadiavova 29.3.2009, 20:51 |
| Предложу простую реализацию. Создаётся кнопка с перечисляемым свойством Command. В зависимости от того, какое значение выберет пользователь для этого свойства, будет выполнятся та или иная команда. |
| Автор: garfna 30.3.2009, 00:30 |
| Спасибо! |
| Автор: -Mikle- 30.3.2009, 21:45 |
| Осмелюсь предложить еще один вариант. Он чуточку сложнее, но зато предоставляет, чуть больше возможностей. Имя свойства у кнопки называется Action. Основан на том, что команда - это объект, который может иметь сколько угодно свойств. Также в примере реализован простой Design-time редактор свойства Action. На этом шаблоне можно легко организовать любые виды команд, в том числе команды-группы команд (сценарии). В примере продемонстрировано три команды: Показать сообщение, Выполнить команду по таймеру, Сценарий (группа комманд)... Будут вопросы, не стесняйся пиши... |
| Автор: garfna 30.3.2009, 22:08 |
| Большое спасибо! |
| Автор: ADVOKAT2 22.10.2012, 15:25 | ||
Здравствуйте уважаемые знатоки! У меня к вам вопрос, скажите пожалуйста, каким образом можно из Xml загрузить динамические данные. Т.е я пытаюсь сделать игру но суть в том, что в моем проекте должен присутствовать динамически вызов компонента. Допустим: Пользователь нажал определенную кнопку и передвинул ее, соответственно сменились Location.X Location.Y, далее я сохраняю все эту петрушку в Xml Файл
Теперь =), пожалуйста подскажите, если пользователь вышел из программы, то при следующим запуске программы, каким образом можно загрузить динамические объекты на свои места которые были записаны в файл Xlm. Спасибо заранее... |