![]() |
Модераторы: gambit, Kefir, Partizan |
![]() ![]() ![]() |
|
snav |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 8.9.2007 Репутация: 2 Всего: 4 |
Всем опять привет.
Возникла задача сделать собственный элемент управления. При этом надо, чтобы его внешний вид не отличался от стандартного TextBox (функционал контрола будет другой, поэтому наследовать класс от TextBox не хотелось бы, внутри моего контрола будет несколько дочерних контролов). Проблема, однако, в том, что в разных системах TextBox выглядит по-разному. Посоветуйте, как быть? Это сообщение отредактировал(а) snav - 31.1.2010, 12:23 |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
snav, если функционал совсем уж другой - лично мне кажется не логичным использование внешнего вида textbox.
что будет делать контрол? -------------------- СУВ, Partizan. |
|||
|
||||
snav |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 8.9.2007 Репутация: 2 Всего: 4 |
Контрол предназначен для ввода нескольких текстовых полей, разделенных статическим текстом. Что-то типа MaskedTextBox. Внутри контрол будет содержать несколько дочерних TextBox (без рамки) и переход между ними будет по клавише Tab. То есть визульно - это должен быть как обычный TextBox, но редактироваться техт будет не целиком, а по частям.
Для примера, настройка времени в Windows: ![]() Это сообщение отредактировал(а) snav - 31.1.2010, 17:01 |
|||
|
||||
DjoNIK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 320 Регистрация: 28.9.2006 Где: Питер/Георгиевск Репутация: нет Всего: 5 |
Может для тебя Border подойдет
-------------------- - Плесни-ка мне холодного кипятку. - Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды? - Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку. (разговор петербуржца и москвича) |
|||
|
||||
snav |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 8.9.2007 Репутация: 2 Всего: 4 |
Я сейчас использую Border. Но проблема в том, как узнать, какую кисть и какие закругления нужно использвать.
|
|||
|
||||
exBlender |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 2.10.2009 Репутация: 9 Всего: 9 |
Просто использовать RichTextBox
Это сообщение отредактировал(а) exBlender - 2.2.2010, 23:11 --------------------
HTML и CSS забыв как страшный сон, хвалу я заммэлу пою и фирме Майкрософт. |
|||
|
||||
snav |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 8.9.2007 Репутация: 2 Всего: 4 |
exBlender, спасибо. Интересная идея, завтра попробую.
|
|||
|
||||
snav |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 8.9.2007 Репутация: 2 Всего: 4 |
Попробовал сделать так, получилось не очень хорошо. Вложенные элементы TextBox отображаются в неактивном состоянии (темно-серый текст на сером фоне). Явное задание Enabled=true в XAML не помогло.
|
|||
|
||||
exBlender |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 2.10.2009 Репутация: 9 Всего: 9 |
Ну, тогда - пардон.
Теоретически, наверное, можно применить измененный стиль, переписав TextBox темплейт и изменив в триггере IsEnabled="False" значения Foregraund и Background на дефолтные... --------------------
HTML и CSS забыв как страшный сон, хвалу я заммэлу пою и фирме Майкрософт. |
|||
|
||||
SergeyLoginov |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 28.9.2009 Где: Иваново Репутация: 4 Всего: 4 |
Чтобы активировать вложенные элементы, необходимо установить значение свойства RichTextBox.IsDocumentEnabled в True |
|||
|
||||
snav |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 8.9.2007 Репутация: 2 Всего: 4 |
exBlender, SergeyLoginov
Большое спасибо. Ваши советы очень помогли. Если модератор читает эту тему, добавьте, пожалуйста, им по плюсику (у меня недостаточно прав). Это сообщение отредактировал(а) snav - 15.10.2010, 17:20 |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |