【问题标题】:Can't un-select my DevExpress LookUpEdit无法取消选择我的 DevExpress LookUpEdit
【发布时间】:2010-10-28 18:03:29
【问题描述】:

我有一个 DevExpress LookUpEdit,我在 VB.Net 中使用 Visual Studio 2008。

我将 LookUpEdit 绑定到我的数据源,它显示的值可能为 null 或数据源中的行之一。 My program displays a treelist and when a node is select the LookUpEdit is supposed to display the assigned value (could be null) and let the user reassign the value. 我确实将 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

不知道为什么,但我无法保持下拉菜单打开。

【问题讨论】:

    标签: vb.net devexpress


    【解决方案1】:

    通常在 UI 中,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

    【讨论】:

    • 按 Ctrl-Del 会清除它。但是当我选择一个新节点时,它会重新获取 LookUpEdit 的数据。然后,如果新值什么都不是(所以想显示一个空白),LookUpEdit 会显示以前的(旧)值。
    • 我尝试将 EditValue 设置为 ""、" " 和 Nothing(我使用的是 VB)。他们都没有清除它。它只显示以前的值。
    • 这很奇怪。这对我来说效果很好。您是否在 DevExpress 上提交了问题以寻求支持。在支持请求中包含一些代码似乎总是能得到最好最准确的答案。
    • 谢谢,我明白了,但不知道为什么它有效,而不是其他值。
    【解决方案2】:

    我解决了这个问题。正如您在编辑中看到的那样,实际上是 lueLocation.ClosePopup() 导致它恢复到以前的 .Text.EditValue 值。我删除了lueLocation.ClosePopup(),然后导致我的界面在值为空时保持下拉菜单保持打开状态,如果有实际分配的值则关闭。

    我发现如果我将.EditValue 设置为DBNull.Value (lueLocation.EditValue = DBNull.Value) 而不是Nothing""" ",它会将分配给 LookUpEdit 的值设置为空并自动关闭下拉式菜单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-06
      • 2011-01-13
      • 1970-01-01
      • 2019-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多