问题标签 [livebindings]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
multithreading - FMX 中是否有 LiveBindings 的替代方法,以便我可以使用线程生成的数据集?
现在我的 FMX 项目完全基于 Livebinding 将数据源连接到表单上的编辑器。
它工作得很好,除了速度慢并且不使用分页加载(TLisView)。
但是,我有许多不同的数据源,数据量可能很大,连接最终很慢。
我的想法是保持用户界面响应并让后台线程使数据加载打开数据源并将其置于正确的状态。之后将数据源分配给表单上的控件。
我用 LiveBinding 玩过它,但我不能将主线程与背景线程混合。发生了一些问题。
必须手动将每个字段记录加载到每个控件似乎是非常低效的。我几乎所有使用的控件都已打包,我基于 FMX 制作了自己的控件,因此我可以添加更多功能。
我想知道是否已经完成了一些事情。我可以用来映射源和目标的任何类或库,并且我可以在需要时激活控件,因为我可以通过线程让许多数据源处于加载状态。
delphi - 使用 TPrototypeBindSource 自动更新对象中的属性
我正在尝试使用实时绑定来更新我的(非组件)对象的属性。我有一个 TPrototypeBindSource,用于将组件绑定到我的对象字段,并在运行时使用 TObjectBindSourceAdapter。如果调用编辑组件的 onchange 事件,我可以让它工作MyPrototypeBindSource.Refresh
,但是有没有办法让它自动发生,而无需为表单上的每个组件设置 onchange 事件?
delphi - Delphi XE LiveBindings - 位到字节
我刚刚发现了 Delphi 的 livebindings。并创建了我的第一个组件来处理变频器的控制字。它本身的组件似乎可以在表单设计器中很好地测试它。但是,编译和运行应用程序的东西不起作用。来自 livbindings 的屏幕截图如下:
这是组件的代码
那么,将这项工作作为活体绑定,我缺少什么?
delphi - 如何使用 LiveBindings 连接数据集中的 2 个字段?
有没有办法使用 Live Binding Designer 将 2 个数据库字段连接到一个组件?
例如,我有一个用于客户端的 MemTable,我想将 FirstName 和 LastName(全名)连接到一个标签。
如果有办法做到这一点,我知道绑定只会在一个方向上(数据库字段-> ComponentProperty)。
delphi - Delphi XE7 - 具有多选列表框的实时绑定
请问如何使用实时绑定在多选列表框中创建存储更多项目到数据库?
对于填充列表框,我使用了绑定 Item.Text 和 Item.LookupData。现在如何将多个项目存储到 mssql 数据库。
谢谢大家:-)顺便说一句对不起我的英语很厉害:-)
delphi - Delphi Object Pascal对应TBindNavigator的运行时调用
我的问题是关于 TBindNavigator 组件按钮的 Delphi Object Pascal 对应的运行时调用。我对以下按钮很感兴趣:
- “邮政”;
- “取消”;
- “刷新”。
如何在没有 TBindNavigator 的代码中实现它?你能澄清一下这个问题吗?谢谢。
delphi - FetchRows 不适用于 FireMonkey StringGrid
我已将 UniQuery 的 FetchRows 设置为 25。在 VCL 应用程序中,它适用于 DBGrid。它仅显示 25 条记录。当我到达 DBGrid 的底部时,它会自动加载更多记录。
但是在 Firemonkey 应用程序中,FetchRows 不起作用。它总是显示所有记录。
我正在使用德尔福 XE8。
delphi - 使用 Livebindings 将多个字段值分配给 FMX MetropolisUI TListBox Item.Text
我正在编写 FMX Metropolis UI 应用程序并尝试通过 LiveBindings 技术(使用表达式引擎)将两个字符串类型的字段值分配给 TListBox 的 Item.Title 成员。
当我以下列方式使用 TBindList 时:
它将“name1 name2”字符串分配给成员Text
,但我无法设置,ListItemStyle := MetropolisUI
因为 TBindList 类中没有这样的属性
如果我使用TLinkFillControlToField
它让我可以分配ListItemStyle
给MetropolisUI
,但是我只能使用FillDisplayFieldName
属性访问一个字段,并且没有SourceExpression
可以分配'FieldByName("name1").Text + " " + FieldByName("name2").Text'
给它的字段。
我试图猜测fromItem.Text
成员的上下文,但我没能做到。我研究了 Delphi 示例,但没有 Metropolis TListBox,而且它的行为方式似乎与常见的方式不同。有没有人知道如何找到这个问题的解决方案?TListBox
TBindList
delphi - 通过 LiveBindings 将数据源与带有标题的 TListBox 链接不起作用
我在 Delphi XE5 中编写 FMX 城市应用程序时遇到了数据源和 TListBox 同步错误。它可以正常工作,直到有一个组合一个或多个项目的组标题。ListBox
选择组中( ListItemStyle
= )的第一项MetropolisUI
会导致其从列表中消失(它变得不可见,这不会影响数据集本身)。
我用来重现错误的以下简化项目以不同的方式起作用,但问题的问题几乎相同。我们只需要一个带有PrototypeBindSource1: TPrototypeBindSource;
(生成文字和整数字段)的表单,BindingsList1: TBindingsList; ListBox1: TListBox;
这Edit1: TEdit;
是 LiveBindings 链接:
项目的选择与 DataSource (DataSet) 中所选记录的 id 不对应。似乎 LiveBindings 引擎同步了所选记录的ItemIndex
属性,TListBox
但不是真实的。id
有没有解决问题的正确方法?
delphi - 如何在 Delphi 中绑定 TObjectList
我试图弄清楚如何将对象列表绑定到列表框。似乎所有 Embarcadero 样本都绑定到数据集。
看来我应该使用 TBindList,但我看不到如何将它链接到 TObjectsList。SourceComponent 属性需要一个组件(而不是列表),并且所有事件似乎都没有意义。
有谁知道这是否可能?