簡體   English   中英

無法取消選擇我的DevExpress LookUpEdit

[英]Can't un-select my DevExpress LookUpEdit

我在VB.Net中有一個與Visual Studio 2008一起使用的DevExpress LookUpEdit。

我將LookUpEdit綁定到我的數據源,並且它顯示的值可能為null或數據源中的行之一。 我的程序顯示一個樹形列表,當選擇一個節點時,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)設置實際值

編輯

所以我縮小了范圍。 在我將Text和EditValue設置為空之后

lueLocation.Text = Nothing
lueLocation.EditValue = Nothing

設置值。 問題在於,在設置值時,下拉菜單會打開。 所以我用lueLocation.ClosePopup()關閉它。 由於某種原因,當它被調用時,它將.Text.EditValue更改回先前的值,從而調用了TextChanged Event

不知道為什么,但是我不能讓下拉菜單保持打開狀態。

通常,在用戶界面中,Ctrl-Del的組合鍵應將其清除並將其設置為空。 否則,在代碼中,您應該能夠將EditValue = Nothing設置為正確。

這是DX網站上的幾個鏈接:

搜索: http : //search.devexpress.com/?q=clear+lookupedit&p=T4%7cP1%7c4&d=447

http://www.devexpress.com/Support/Center/p/Q96464.aspx http://www.devexpress.com/Support/Center/p/Q270901.aspx

我解決了問題。 如您在“編輯”中所看到的,實際上是lueLocation.ClosePopup()使它恢復為先前的.Text.EditValue值。 我刪除了lueLocation.ClosePopup() ,然后使我的接口使下拉列表保持打開狀態(如果該值為null),並關閉該菜單(如果存在實際分配的值)。

我發現如果將.EditValue設置為DBNull.ValuelueLocation.EditValue = DBNull.Value )而不是Nothing""" "則會將分配給LookUpEdit的值設置為no,並自動關閉下拉菜單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM