У меня есть DevExpress LookUpEdit, который я использую с Visual Studio 2008 в VB.Net.Не могу отменить мой DevExpress LookUpEdit
У меня есть LookUpEdit, привязанный к моему источнику данных, и значение, которое оно отображает, может быть нулевой или одной из строк в источнике данных. Моя программа отображает твилист, и когда узел выбирает, LookUpEdit должен отображать назначенное значение (может быть null) и позволить пользователю переназначить значение. У меня есть LookUpEdit.Properties.AllowNullInput установлен в True. Прямо сейчас, когда программа запускается первым, если первый узел в списке, который я выбираю, имеет нулевое значение, LookUpEdit ничего не отображает, если я изменил значение LookUpEdit на изменение значения в базе данных, если я перейду на узел, который имеет значение для LookUpEdit показывает значение.
Проблема в том, что если я переключусь с узла со значением на один без LookUpEdit, вы увидите предыдущее значение. Я прошел через отладчик, и он все еще правильно проходит выборку.
Я попытался сбросить LookUpEdit.Text, LookUpEdit.EditValue и LookUpEdit.SelectedText, но ничего не работает. Я даже копировал условия, которые имеет LookUpEdit, когда он сначала ничего не отображает (LookUpEdit.Text = "" и LookUpEdit.EditValue = ""), но он по-прежнему отображает последнее значение.
Я устанавливаю фактическое значение с lueLocation.EditValue = lueLocation.Properties.GetKeyValueByDisplayText (VALUENAME)
EDIT
Так что я сузили его. После того, как я не установил значение Text и EditValue в
lueLocation.Text = Nothing
lueLocation.EditValue = Nothing
Значения установлены. Проблема в том, что в процессе установки значения открывается раскрывающееся меню. Поэтому я закрываю его с lueLocation.ClosePopup()
. По какой-то причине, когда он вызван, он меняет .Text
и .EditValue
обратно на предыдущие значения и, таким образом, вызывает TextChanged Event
.
Не знаю, почему, но я не могу оставить раскрывающееся меню открытым.
Нажатие Ctrl-Del очищает его. Но когда я выбираю новый узел, он повторно извлекает данные для LookUpEdit. Тогда, если новое значение ничего (так что хотите показать пробел), LookUpEdit отображает предыдущее (старое) значение. – Kyra
Я попытался установить EditValue в "", "" и Nothing (я использую VB). И никто из них не понял этого. Он просто отображает предыдущее значение. – Kyra
Это странно. Это сработало хорошо для меня. Вы отправили вопрос на поддержку в DevExpress. Включение некоторого кода с запросом на поддержку всегда, кажется, дает лучший наиболее точный ответ. –