"EhLib.Com" https://forum.ehlib.com/ru/ |
|
ReadStorableSettings. Не работает Visible https://forum.ehlib.com/ru/viewtopic.php?f=9&t=3071 |
Страница 1 из 1 |
Автор: | ndrnesterov [ 20 янв 2021, 10:59 ] |
Заголовок сообщения: | ReadStorableSettings. Не работает Visible |
Добрый день! Сегодня реализовал сохранение настроек сетки в реестр. Все отлично, за исключением того, что метод DataGridEh.ReadStorableSettings не меняет Visible. Предположим, я скрываю столбец Id и сохраняю в реестр. После чтения из реестра я вижу, что в Dictionary<string, object> у столбца Id, Visible указан false. Все отлично, но когда я все это передаю в метод DataGridEh.ReadStorableSettings, видимость остается. Подскажите, как это можно исправить? |
Автор: | EhLibSupport [ 21 янв 2021, 12:47 ] |
Заголовок сообщения: | Re: ReadStorableSettings. Не работает Visible |
Добрый день. ---- Установка видимости столбца при чтении настроек выполняется в методе EhLib.WinForms.DataGridManager.ReadColumnSettings Проверьте, останавливается ли отладчик на этом методе и присваивает ли значения свойству column.Visible. ---- В архиве библиотеки присутствует Демо проект. Demos\DisplayLayoutStorableApp\DisplayLayoutStorableApp.csproj В котором также сохраняется и восстанавливается видимость колонок. Попробуйте сравнить использование метода grid.ReadStorableSettings в вашем проекте и в Демо проекте в методе DisplayLayoutStorableApp.BaseForm.ReadStorableSettings |
Автор: | ndrnesterov [ 21 янв 2021, 14:52 ] |
Заголовок сообщения: | Re: ReadStorableSettings. Не работает Visible |
Кажется я догадался в чем проблема. Это логическая ошибка в моем коде. При чтении из реестра я записывал в object значение (false) не как bool, а как string. Но в моем случае решение проблемы - это писать костыли, которые я очень не люблю. Я воспользовался примером из вашего руководства разработчика и добавил вот такой код в событие: Код: private void Table_GridColumnSettingsReading(object sender, EhLib.WinForms.DataGridColumnStorableSettingsReadingEventArgs e) { if (e.Settings.TryGetValue("Visible", out object visible)) { if (visible != null) e.Column.Visible = visible.ToBool(); } } |
Автор: | viladygin [ 01 дек 2022, 03:29 ] |
Заголовок сообщения: | Re: ReadStorableSettings. Не работает Visible |
Я написал свой механизм, работает на 100% |
Страница 1 из 1 | Часовой пояс: UTC |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |