saimanisha Ответов: 1

Можем ли мы написать этот нижеприведенный код повторно, независимо от событий cotrol в WPF ?


Я написал код для поля поиска. как будто я взял текстовое поле, и когда я ввожу в него символы, он ищет, присутствуют ли введенные данные в db или нет, и параллельно он делает скрытый список видимым. в списке я привязываю верхние 5 данные, которые извлекаются из db, если мы выбираем любое из 5 слов, пришедших из db в список. затем это выбранное слово будет привязано к текстовому полю. это WPF. поэтому я использовал привязку управления ui с кодированием C #. поэтому, когда я вернусь к Событие evry keyup проверяет, использую ли я keyback или нет. если это backkey, то он стирает данные, в противном случае стирание данных никогда не работает. это ограничивает плохую операцию, которая стирается сама.
так что, по моему мнению, я не могу сделать это без использования обработчиков событий ,но у меня есть вопрос, Можем ли мы сделать этот код без записи в каждом и evry page.is и я пишу глобальные переменные also.to подтвердите, являются ли условия истинными или ложными.

Что я уже пробовал:

&ЛТ;текстовое поле текст={обязательный элемент управления ListBox элемент.Имя элемента категории = "li"} / >
<listbox name= "li" (привязка из БД ) привязка: категория / >

 private void TEXTBOX_TextChanged(object sender, TextChangedEventArgs e)
{
THIS IS TO CHECK THE DATA WHAT WE ENTERED IS PRESNT IN DB OR NOT IF PRESENT 
IT BINDS TO LISTBOX AND THE SELECTED ITEM FROM LISTBOX WILL BE BINDED TO TEXTBOX
}
 private void txtroomno_KeyUp(object sender, KeyEventArgs e)
        {
          FOR EVRY KEY UP IAM CHECKING ITS BACK KEY OR NOT.IF ITS NOT BACK KEY THEN DATA FROM TEXBOX WONT GET ERASED AND IF IT IS BACK KEY THEN DATA GETS ERASED AND FINALLY WHEN TEXTBOX IS EMPTY THEN IT CHECKS ITS LENGTH .IF LENGTH IS ZERO THEN IT MAKES LISTBOX TO BE INVISIBLE.
        }

Graeme_Grant

да.

saimanisha

не могли бы вы объяснить мне, как это сделать независимо от контрольного события, и требование состоит в том, что мы должны использовать один и тот же код для всех форм

1 Ответов

Рейтинг:
1

johannesnestler

Таким образом, вы можете создать " пользовательский элемент управления "(а не" пользовательский элемент управления"!), чтобы сделать это (возможно, унаследованный от TextBox),
или сделать это поведением Создание пользовательских моделей поведения[^] #
Если вы создаете "пользовательский элемент управления", лучше сначала прочитать учебник из - за некоторых специальных предложений в WPF, таких как generic theme и т. д.-И я бы предположил (основываясь на стиле вашего вопроса), Что вы новичок в WPF.

Кстати:
Я не понимаю, что вы подразумеваете под "без обработчиков событий" и "независимо от контроля"...


Оффтопик: я бы посоветовал вам не делать круговой переход к базе данных при каждом обмене текстами - возможно, вы можете кэшировать значения базы данных и просто обновлять их время от времени. Или вы реализуете своего рода" автоматическое предложение "текстового поля, потому что кажется, что набор текста должен просто" искать " возможные значения, и никакие другие значения не могут быть введены.... Может быть, комбо-бокс подойдет лучше...