【问题标题】:how can i solve my Livebinding and combobox problem如何解决我的 Livebinding 和组合框问题
【发布时间】:2021-07-23 08:27:05
【问题描述】:

我有一个与组合框绑定的数据集 (mysql),我看到了一个问题,所以我添加了一个字符串网格来演示这个问题。

当我点击 XMPS 组合框列表是好的(组合框和 stringgrid 显示相同的东西)

当我点击 XMPSSCO 组合框和 stringgrid 显示单个结果时,这没关系

但是当我点击组合框时,它会在 stringgrid 正确时列出以前的数据

有人遇到过这个问题吗? 我做错了什么? 这是一个错误吗?

谢谢 克劳德

【问题讨论】:

    标签: delphi firemonkey livebindings


    【解决方案1】:

    同样的事情在 D10.4 中也发生在我身上

    尝试使用 ComboBox 中的 DropDownkind 属性。从原生更改为自定义。

    TComboBox.DropDownKind = Custom
    

    仅此而已。这个对我有用。 在 android 中很丑,但你在寻找更多选择时解决了。

    替代方案:Woll2woll 组件或在新的 Delphi D11 中尝试

    【讨论】:

    • 已经确认,经过我的测试,这个问题在版本 11 alaxandria 中得到了解决,并且一切正常。
    【解决方案2】:

    我在其他论坛上发现了同样的痛苦。 通过 TComboBox 代码,我发现 livebindings 不会触发 Change 事件(出于某种原因);

    添加一个 ComboBox.Items.Add('');在数据集的 .execute 之前(这会强制更改事件)并且它可以工作。

    MyComboBox.Items.Add(''); //Force the trigger OnChange
    MyDataSet.Execute;
    

    我比上一个更喜欢这个解决方案,因为你保留了原生模式。

    我知道它应该是临时的,但它是 1 行,它暂时解决了这个惩罚。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-11
      • 1970-01-01
      • 2019-11-03
      • 1970-01-01
      • 1970-01-01
      • 2011-02-15
      • 2019-05-26
      • 2020-10-21
      相关资源
      最近更新 更多