Delphi XE2 之 FireMonkey 入门(26) - 数据绑定: TBindingsList: TBindExprItems
生活随笔
收集整理的這篇文章主要介紹了
Delphi XE2 之 FireMonkey 入门(26) - 数据绑定: TBindingsList: TBindExprItems
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
如果要給一對 "源控件" 和 "目標(biāo)控件" 寫多個(gè)表達(dá)式, 使用 TBindExpression 就不如 TBindExprItems 了.
TBindExprItems 中的表達(dá)式又分兩組: FormatExpressions、ClearExpressions, 后者是在斷開綁定時(shí)的表達(dá)式.
示例設(shè)想:
1、TrackBar1 為源, 把其 Value 值綁定給 Edit1.Text 和 Edit1.Width 和 Label1.Text;
2、斷開綁定時(shí), 在 Edit1 中顯示 "已斷開綁定".
先在窗體上添加: TrackBar1、Edit1、Label1、BindingsList1、CheckBox1, 然后激活 TrackBar1、ChengkBox1 和窗體的默認(rèn)事件:
unit Unit1;interfaceusesSystem.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, Data.Bind.EngExt,Fmx.Bind.DBEngExt, Data.Bind.Components, FMX.Edit;typeTForm1 = class(TForm)TrackBar1: TTrackBar;Edit1: TEdit;Label1: TLabel;BindingsList1: TBindingsList;CheckBox1: TCheckBox;procedure FormCreate(Sender: TObject);procedure TrackBar1Change(Sender: TObject);procedure CheckBox1Change(Sender: TObject);end;varForm1: TForm1;implementation{$R *.fmx}varbindExprItems: TBindExprItems;procedure TForm1.FormCreate(Sender: TObject); beginbindExprItems := TBindExprItems.Create(BindingsList1);with bindExprItems dobeginControlComponent := Edit1; //目標(biāo)控件SourceComponent := TrackBar1; //源控件{把 TrackBar1.Value 綁定到 Edit1.Text}with FormatExpressions.AddExpression dobeginControlExpression := 'Text';SourceExpression := 'Value';end;{把 TrackBar1.Value 綁定到 Edit1.Width}with FormatExpressions.AddExpression dobeginControlExpression := 'Width';SourceExpression := 'Value';end;{把 TrackBar1.Value 綁定到 Label1.Text}with FormatExpressions.AddExpression dobeginControlExpression := 'Owner.Label1.Text'; //OwnerSourceExpression := 'Value';end;{當(dāng)要斷開綁定時(shí)...}with ClearExpressions.AddExpression dobeginControlExpression := 'Self.Text'; //這里的 Self 是指目標(biāo)控件本身, 可省略SourceExpression := '"已斷開綁定"';end;Active := True;end;CheckBox1.IsChecked := True;TrackBar1.Max := ClientWidth; end;procedure TForm1.TrackBar1Change(Sender: TObject); beginBindingsList1.Notify(Sender, 'Value'); end;procedure TForm1.CheckBox1Change(Sender: TObject); beginbindExprItems.Active := TCheckBox(Sender).IsChecked; end;end.
轉(zhuǎn)載于:https://www.cnblogs.com/del/archive/2011/10/02/2198309.html
總結(jié)
以上是生活随笔為你收集整理的Delphi XE2 之 FireMonkey 入门(26) - 数据绑定: TBindingsList: TBindExprItems的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RNN系列
- 下一篇: 1.1 一个简单的脚本