Стартовая страница › Форумы › Разработка и интеграция › Как использовать одновременно
- В этой теме 11 ответов, 3 участника, последнее обновление 1 год, 10 месяцев назад сделано Mikhail.
-
АвторСообщения
-
04.05.2022 в 17:33 #23363manjey73Участник05.05.2022 в 19:34 #23371MikhailМодератор
Уточните, что должны настраивать дополнительные окна?
Они нужны для редактирования тех свойств, которые выводятся в таблицу?05.05.2022 в 21:31 #23376manjey73УчастникДополнительные окна для настройки шаблона. Повесил вызов окна Custom Parametrs из своего окна. Вроде работает, меняет заданные параметры.
Но было бы разумнее при использовании встроенных возможностей окон вызывать их напрямую в настройках Опроса Устройства.
В настройках есть кнопка Propirties, если мы используем только Custom Propirties то нормально, если мы используем полностью свое окно, тоже нормально.
А если нужно и то и другое? почему бы каким-то параметром не добавлять кнопку и одной вызывать Custom, а другой свое окно ?
06.05.2022 в 12:46 #23381MikhailМодераторПо идее, таблица свойств умеет показывать доступные команды, как описано здесь.
Для этого в редактируемом объекте должен быть объявлен метод[Browsable(true)] public void TestMethod() { MessageBox.Show("TestMethod invoked"); }
Попробуйте, будет работать?
06.05.2022 в 13:16 #23382manjey73Участник/// <summary> /// Shows a modal dialog box for editing device properties. /// </summary> public override bool ShowProperties() { TesterOptions options = new(DeviceConfig.PollingOptions.CustomOptions); FrmOptions frmOptions = new() { Options = options }; if (frmOptions.ShowDialog() == DialogResult.OK) { options.AddToOptionList(DeviceConfig.PollingOptions.CustomOptions); return true; } else { return false; }
Не очень понимаю, куда тут вставлять
[Browsable(true)] в DevXXXView чтобы на этом окне появился TestMetod
Или это необходимо делать не в Dev ?
Собственно при этом еще необходимо вызвать Окно новое, в котором будут необходимые настройки- Этот ответ был изменен 1 год, 10 месяцев назад от manjey73.
06.05.2022 в 14:17 #23384RomirosУчастникСоздайте полностью свою форму редактирования драйвера и не мучайте эту форму :).
Эту оставьте для максимально простых «плоских» конфигураций драйверов, где свойства будут в виде списка строк и не имеет смысла создавать отдельный xml файл.06.05.2022 в 15:02 #23385manjey73Участник@romiros не, кроме своей формы мне нужны эти поля в Custom Parameters. Например для указания паролей счетчиков.
Раньше я использовал Пользовательские параметры, где хранится TransMode у Modbus драйвера.
Теперь данное поле для этих целей лучше.На данный момент я в своем окне добавил кнопку и вызываю эти свойства по кнопке, работает… Просто думал есть механизм проще…
з.ы. Создавая данный механизм с Параметрами Опроса надо было делать не Или/Или а Или/И
06.05.2022 в 15:27 #23386RomirosУчастникА какой смысл использовать данные поля, если Вы всё равно делаете дополнительный конфиг. Поместите пароли в него. Или у Вас весь конфиг сохранится в эти CustomOptions?
Пользовательские параметры раньше были только для линии связи, теперь появились для драйвера, что значительно расширило возможности и как писал ранее для простых драйверов можно не тратить время на разработку пользовательского интерфейса драйвера.
06.05.2022 в 15:45 #23387manjey73УчастникНу когда несколько счетчиков, то лепить пароль в файле шаблона как-то не совсем кошерно. Из этих соображений. Шаблон шаблоном, но если пароли делаем разные, то плодить из-за этого шаблоны не очень удобно.
Думаю вот еще пароли шифровать, но пока по простому…
К сожалению в Параметры шаблона списки не запихнешь, там просто словарь ключ — значение.
06.05.2022 в 15:59 #23388RomirosУчастникК сожалению в Параметры шаблона списки не запихнешь, там просто словарь ключ — значение.
О том и речь.Готовые функции шифрования есть в скаде. Не помню точно в каком классе, где-нибудь в утилс поищите.
06.05.2022 в 16:43 #23389manjey73УчастникНу вот по этому и Свое окно + Custom вызываю по кнопке. Вполне подойдет.
Но если бы Михаил подумал, что можно применять и то и то, то было бы немного лучше, не надо было бы вызывать одно окно, чтобы вызвать другое.06.05.2022 в 20:50 #23392MikhailМодераторНе очень понимаю, куда тут вставлять
[Browsable(true)]Метод нужно добавить в свой класс опций, который передаётся в PropertyGrid на редактирование.
Две кнопки свойств делать неудобно.
Если решите хранить конфигурацию в файле, то была разработана универсальная форма для более сложных конфигураций. Она используется в драйверах MQTT, ссылка. Чтобы использовать эту форму, классы конфигурации нужно определённым образом подготовить. -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.