powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Запретить переход фокуса на UserControl
5 сообщений из 5, страница 1 из 1
Запретить переход фокуса на UserControl
    #32802024
Astakhov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть некий класс который динамический создает интерфейс.
У класса есть UserControl.
Если его задали, то он рисуется на определенной панели.
UserControl должен просто показывать какие либо данные.
Проблема: Он ни под каким соусом не должен получать фокус.
Я понимаю, что можно всем контролам интерфейса замутить событие Validating и проверять: если Parent наш UserControl, то e.Cancel = true;

А есть более человеческий способ, что б на самом контроле сказать, будет ли он иметь возможность получения фокуса?
Самое обидное, что можно было бы на него наклепать не активных контролов, но эта сволочь, как оказалось сама ловит фокус.

Что скажет купечество?
...
Рейтинг: 0 / 0
Запретить переход фокуса на UserControl
    #32802270
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AstakhovЕсть некий класс который динамический создает интерфейс.
У класса есть UserControl.
Если его задали, то он рисуется на определенной панели.
UserControl должен просто показывать какие либо данные.
Проблема: Он ни под каким соусом не должен получать фокус.
Я понимаю, что можно всем контролам интерфейса замутить событие Validating и проверять: если Parent наш UserControl, то e.Cancel = true;

А есть более человеческий способ, что б на самом контроле сказать, будет ли он иметь возможность получения фокуса?
Самое обидное, что можно было бы на него наклепать не активных контролов, но эта сволочь, как оказалось сама ловит фокус.

Что скажет купечество?
1 Попробовать положить его на контейнер, которому сказать Enabled=false
2 Если есть возможность, использовать для отображения контролы, к-е не могут получать фокус (Label)
...
Рейтинг: 0 / 0
Запретить переход фокуса на UserControl
    #32802531
Astakhov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так и сделал, но сам UserControl хватает фокус.
А по поводу Enabled=false, так и контролы на нем становятся в состояние Enabled=false
...
Рейтинг: 0 / 0
Запретить переход фокуса на UserControl
    #32802602
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, если такая цепочка:
-Панель.Enabled=false,
-Прорисовался на нем UserControl
То он будет доступен.

Надо панели дать Enabled=false после прорисовки UserControl
Или дважды сменить Enabled
...
Рейтинг: 0 / 0
Запретить переход фокуса на UserControl
    #32802671
Фотография ctmike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подписатся на..
Код: plaintext
1.
2.
3.
private void UserControl1_Enter(object sender, System.EventArgs e)
		{
			this.Parent.GetNextControl(this, true).Focus();
		}

В конструторе или дизайнере.
Код: plaintext
this.TabStop = false;

Помойму работает.
Ессно способ не очень краше устойчевый напрмер если второго контрола не будет но суть понятна. во всяком случае в атаче проэектик и работает ;))

Наилушее!!
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Запретить переход фокуса на UserControl
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]