![]() |
|
Модераторы: diadiavova, gambit |
![]()
|
|
| Doff |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 15.11.2007 Репутация: нет Всего: нет |
Здравствуйте. Столкнулся с проблемой: имеется Textbox. C помощью диалога выбора шрифта выбирается шрифт. Ну тут все просто
А еще надо сохранить и загрузить параметры шрифта. Код
не работает, получается ошибка Value of type 'System.Drawing.Font' cannot be converted to 'String'. Как можно привести параметры шрифта к строковому типу? Далее. Обнаружил, что вручную проблематично установить шрифт. Можно воспользоваться вот таким способом, но это мне не нужно, а нужно что-то вроде
однако опять-таки все упирается в типы данных... Помогите советом, пожалуйста. |
||||||
|
|||||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Такие параметры как шрифт легко сохраняются в настройках приложения, для этого даже код писать не надо. Просто в нужном текстбоксе открой окно свойств найди там пункт Application Setttings, Разверни его там увидишь пункт Property Bindings. Запусти диалог связывания свойств, найди там шрифт, тут же (или в свойствах проекта) можно создать соответствующую настройку, и увязать её со свойством Font текстбокса, её значение будет сохраняться автоматически.
![]() ![]() ![]() Это сообщение отредактировал(а) diadiavova - 13.12.2008, 15:55 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Doff |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 15.11.2007 Репутация: нет Всего: нет |
diadiavova, как говорится - век живи, век учись! Спасибо!
|
|||
|
||||
| transparent |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 7.5.2011 Репутация: нет Всего: нет |
diadiavova, слушай не могу поймать где это все находится??
И что прям можно вот так взять и поставить чтобы например сохранялсь расположение окна (формы) относительно формы, и при следующем запуске окно будет там же??????? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
В каком смысле относительно формы? Сохранять в настройках приложения можно значения свойств. Для этого для каждого сохраняемого значения создается своя настройка и к ней уже можно привязать значение нужного свойства окна. Находится это в свойствах окна. Выделяешь форму, открываешь ее свойства и находишь там Application Settings. Там есть инструменты. Еще к настройкам приложения можно получить доступ через свойства проекта. Там есть вкладка с настройками, на ней ты найдешь настройки всего проекта, к ним так же можно получить программный доступ. http://msdn.microsoft.com/ru-ru/library/wabtadw6.aspx А вообще смотри тут http://social.msdn.microsoft.com/Search/ru...beta=0&ac=8 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| transparent |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 7.5.2011 Репутация: нет Всего: нет |
diadiavova, опечатался.. Относительно экрана (рабочего стола).
Да, блин..Чтобы например сделал размер у формы, и при следующей загрузке она была таких же размеров...Вот что я имею ввиду Добавлено через 8 минут и 14 секунд обязательно завтра почитаю, спасиб Скажи, и не обидно тебе что все так легко делается? Мне вот стало сейчас обидно ,так как все эти параметры я постоянно куда нить сохранял, в файл в реестр, а оказывается и кодить не нужно было, и легко и плохо, потому как нужно знать основу, а уже потом можно и для быстроты что нибудь сохранить...Основы я имею ввиду - умение не галки на против свойств ставить(для соъранения настроек) а все самому писать |
|||
|
||||
| transparent |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 7.5.2011 Репутация: нет Всего: нет |
и ПРАВДА получается...но заметил некоторые баги..
Например я сделал сохранение расположение окна (Location), все пучком..И добавил Windowstate..Тоже вроде пучком, но если я пытаюсь развернуть форму (после того как все сохранения заработали) - то форма не разворачивается, а возвращается в обычное состояние.... То есть не катит одновременное сохранение нескольких настроек? а сколько придвидится проблем если еще кучу насохранять И еще если не ставить сохранение Виндостате - то (если стоит сохранение локатион) - то если развернуть форму и закрыть - то при следующей загрузке - форма будет не там от куда мы ее разворачивали - а в левом углу!!А это баг я считаю, потому как сам с таким боролся, когда сохранял все эти вещи в отдельный файл..Там мне приходилось следить за тем какое окно было до тех пор пока его не закрыли и когда его не видоизменили, вроде не сложно, но там не все так просто, причем с Бегин и Ендресайз ничего не получилось, а получилось только с просто ресайз и Me.LocationChanged... И вот еще один - если мы сохранили положение окна с помолчальными координатами (0,0) - то при загруке видно как форма мечется из угла в те координаты какие она (форма) запомнила для себя, ужасно не красиво, тоже баг! |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Я не вполне понял что ты имеешь в виду. Там, емнип, имеет значение порядок сохранения настроек(вроде бы), то есть, если сначала разворачивается окно, а потом для него устанавливается положение, то вот и причина, почему оно свернулось. Надо делать наоборот. В сохранении параметров нет никакой магии: просто когда ты вновь запускаешь форму, ее свойствам присваиваются соответствующие значения вот и все. Стало быть особенности поведения формы надо учитывать, когда выполняешь эти действия. Тут надо либо порядок присвоения свойств поменять, либо делать это программно руками и в этом случае перед установлением положения проверять не развернуто ли окно. Ну это естественно, учитывая, что в развернутом состоянии ее положение действительно именно такое. С этим можно бороться, если к примеру создать свою форму, в которой будет свойство, запоминающее расположение формы пред последним разворотом и сохранять именно его (кстати, не исключено, что такое свойство есть, надо поискать). Попробуй сохранить StartPosition. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| transparent |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 7.5.2011 Репутация: нет Всего: нет |
ну да, ну да..Наверно все можно довести до ума, но я бросил это дело через 30 минут энтих опций...Как вариант для быстроты разработки приложения это таки гуд(если совсем торопишься
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Ну и не забывай о том, что к параметрам приложения можно получить доступ из кода, это лучше, чем мудрить с собственными файлами.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| transparent |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 7.5.2011 Репутация: нет Всего: нет |
О чем ты?
О том что можно получить размер формы? При чем здесь это? Или ты о том что можно получить доступ к тому что пытаешься сохранить(в этих настройках - биндингс))? |
|||
|
||||
| diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
О том, что параметры приложения существуют не только для привязки к элементам пользовательского интерфейса. Ты с таким же успехом можешь создать параметр в свойствах проекта и использовать его по своему усмотрению из кода. Кроме того, в твоем случае проблемы возникли из-за того, что ты пытался сохранять два взаимосвязанных свойства одного объекта и проблемы эти никакого отношения к самому механизму привязки свойств к параметрам приложения не имеют, а только лишь к особенностям поведения формы. Это ты мне объясни.
Параметры приложения и привязки(биндингс) - разные вещи. Просто совместно они дают такую вот удобную тулзу.
Ну если конечная цель разработки - сохранение свойств контролов, то действительно можно и не торопиться, но вообще-то всегда есть масса куда более важных и куда более сложных задач. А на твой вопрос я так полагаю, ответ ты получил, не все так просто и для того, чтобы грамотно пользоваться этими удобствами надо в них хорошо разбираться. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
||||
|
|||||
![]()
|
| Правила форума VB .NET | |
|
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |