Как сбросить ComboBox по умолчанию Text i, установленный в свойствах. Скажем, у меня есть ComboBox с текстом по умолчанию «руб. y», который, когда SelectedIndexChanged печатается в TextBox, после этого не перегружает текст по умолчанию «Ruby», но SelectedItem. Я хочу, чтобы он читал «Ruby» после или все время, если это невозможно. СпасибоVBNET: Как сбросить ComboBox после выбора
ответ
- Объявите переменный вспомогательный класс в классе формы:
Dim _originalComboText As String
- На открытии формы, помните, по умолчанию текстого управления в некоторых хелперах переменный. Например, добавьте следующую строку в конструктор (
Sub New()
):
_originalComboText = ComboBox1.Text
- Каждый раз, после того, как выбор сделан, восстановить текст из него:
ComboBox1.Text = _originalComboText
Если вы проверить содержание .designer.vb
файл, принадлежащий вашей форме, вы можете увидеть инициализацию текста своего элемента управления через задание (=
) - так что vb.net не делает здесь никакой особой магии. Если вы хотите сохранить текст, вам нужно сохранить его где-нибудь, прежде чем он потеряется.
Вот полный минимальный пример:
Public Class Form1
Dim _originalComboText As String
Sub New()
' This call is required by the designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
_originalComboText = ComboBox1.Text
End Sub
Private Sub ComboBox1_Leave(sender As Object, e As EventArgs) Handles ComboBox1.Leave
ComboBox1.Text = _originalComboText
End Sub
Private Sub ComboBox1_LocationChanged(sender As Object, e As EventArgs) Handles ComboBox1.LocationChanged
ComboBox1.Text = _originalComboText
End Sub
End Class
И если ваши два обработчика не отличаются, а затем заменить их только с одним - с двумя событиями в пункте Handles:
Private Sub ComboBox1_RestoreText(sender As Object, e As EventArgs) _
Handles ComboBox1.Leave, ComboBox1.LocationChanged
ComboBox1.Text = _originalComboText
End Sub
Используйте это:
Private Sub ComboBox1_Leave(sender As Object, e As EventArgs) Handles ComboBox1.Leave
ComboBox1.Text = "Ruby"
End Sub
Private Sub ComboBox1_LocationChanged(sender As Object, e As EventArgs) Handles ComboBox1.LocationChanged
ComboBox1.Text = "Ruby"
End Sub
С пользователь выберет, скажем print <<"EOF"; ---mytext---EOF
из выпадающего списка, и это будет автоматически печататься в текстовом поле. Он или она должен пойти в текстовое поле или в другое место.
Я знаю, что это не совестно, чтобы отвечать на собственный вопрос, но если кому-то нужна помощь. Здесь
Это решение имеет одну небольшую проблему. У вас есть значение 'Ruby' на 2 независимых местах. Если вы хотите получить чистый код, сохраните текст только один раз - либо в форме Designer, либо в самом коде. В своем ответе я показал вам, как иметь «Ruby» только в дизайнере форм. – miroxlav
Я получил значение 'Ruby' в дизайнере форм. Это я сказал в своем вопросе: «Как сбросить ComboBox по умолчанию ** Text ** i установлен в ** свойствах **.« Ruby »- это не выпадающий элемент, но он должен показать пользователю выпадающее меню дать ему рубиновый синтаксис. –
У вас есть строка '' Ruby'' три раза.Просто реализуйте мой ответ, чтобы узнать, как его получить только один раз. Повторение одного и того же литерала по коду - это плохая привычка, которую следует избегать, потому что это приводит к ошибкам: например, вы обнаруживаете и обновляете только 2 из 3 вхождений «Ruby» - и вы вводите ошибку. Научитесь делать это правильно: не повторяйте себя. – miroxlav
- 1. WPF, как сбросить combobox после выбора сделана
- 2. Сбросить текст в Combobox После выбора
- 3. как сбросить переменную после выбора?
- 4. Сбросить ComboBox
- 5. Как сбросить поле выбора после скрытия модального?
- 6. GXT ComboBox unselect после выбора
- 7. Обновить расчёт после выбора combobox?
- 8. CheckComboBox: Как предотвратить закрытие combobox после выбора?
- 9. заполнение combobox в vbnet, когда combobox находится в групповом ящике
- 10. Как изменить данные combobox после изменения другого выбора элемента combobox?
- 11. Angular2 - сбросить значение выбора после изменения пользователем
- 12. Как требовать выбора ComboBox?
- 13. Сбросить ComboBox с новыми значениями
- 14. Показать текст ввода после выбора Combobox
- 15. Запуск wx.EVT_COMBOBOX после программного изменения выбора ComboBox?
- 16. Winforms combobox change displaytext после выбора значения
- 17. combobox focus on начало текста после выбора
- 18. ComboBox, показывающий System.Data.DataRowView после изменения выбора
- 19. Почему мой comboBox пуст после выбора значения?
- 20. Изменение выбора WPF ComboBox после переключения вкладок
- 21. C# Обновление MVVM Datagrid после выбора combobox
- 22. JavaFX ComboBox - другой текст, отображаемый после выбора
- 23. Как сбросить выбор после выбора элемента в PieChart
- 24. Как сбросить данные в поле после изменения выбора в другом?
- 25. Сбросить несколько опций выбора
- 26. Сбросить значение поля выбора
- 27. My C# ComboBox не вызывается получателем после выбора элемента. Зачем?
- 28. ComboBox Сброс для выбора текста ComboBox в окнах Приложение
- 29. Population combobox на основе выбора другого combobox
- 30. Как получить ListBox для загрузки после выбора значения ComboBox?
Спасибо, но я обнаружил решение после игры с объявлениями. –
Прошу прощения, но ваш ответ не работает. Моя делает, хотя –
Прошу прощения, что слышу это. Но «Не работает» очень расплывчато, поэтому я не могу вам помочь. Может быть, вы можете быть более конкретным. На моей стороне код работает безупречно. – miroxlav