際際滷

際際滷Share a Scribd company logo
LiveBindings
     in
 Delphi XE2
Hi! Im Stefaan
Our company
Our company




Software Development
Our company




Software Development
     & New Media
    Technologies
You can 鍖nd me here :
You can 鍖nd me here :

 www.devia.be
 www.twitter.com/StefaanLesage
 www.linkedin.com/in/
 stefaanlesage
 Stefaan_Lesage on Skype
Pens Down !!!
Pens Down !!!
Pens Down !!!
 W鞄庄岳艶-永温沿艶姻
Pens Down !!!
 W鞄庄岳艶-永温沿艶姻
 25 Pages
Pens Down !!!
 W鞄庄岳艶-永温沿艶姻
 25 Pages
 Text, Screenshots &
  Code
Pens Down !!!
 W鞄庄岳艶-永温沿艶姻
 25 Pages
 Text, Screenshots &
  Code

 Links to resources
Pens Down !!!
 W鞄庄岳艶-永温沿艶姻
 25 Pages
 Text, Screenshots &
  Code

 Links to resources
 ...
LiveBindings
LiveBindings
 What is LiveBindings ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
   Managed vs Unmanaged ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
   Managed vs Unmanaged ?
            Demos ...
LiveBindings
LiveBindings
 What is LiveBindings ?
What is
LiveBindings ?
What is
LiveBindings ?
In short ... a technique to bind Data
     to Objets or Components.
LiveBindings
 What is LiveBindings ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
What can we use
LiveBindings for ?
What can we use
   LiveBindings for ?
 Bind TDataSet data to a Component
What can we use
   LiveBindings for ?
 Bind TDataSet data to a Component
 Bind data from one component to
  another
What can we use
    LiveBindings for ?
 Bind TDataSet data to a Component
 Bind data from one component to
  another
 Bind a combination of data using
  expressions to a property of an
  Object
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
How does it Work ?
How does it Work ?

   Source
How does it Work ?

   Source
   Source Expression
How does it Work ?

   Source
   Source Expression
   Control
How does it Work ?

   Source
   Source Expression
   Control
   Control Expression
How does it Work ?
How does it Work ?
Source
TPerson
How does it Work ?
    Source
    TPerson


Source Expression
   FirstName
How does it Work ?
    Source          Control
    TPerson          TEdit


Source Expression
   FirstName
How does it Work ?
    Source               Control
    TPerson               TEdit


Source Expression   Control Expression
   FirstName              Text
How does it Work ?
    Source                        Control
    TPerson                        TEdit


Source Expression            Control Expression
   FirstName                       Text



                    Engine
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
   Managed vs Unmanaged ?
Managed vs
Unmanaged
Managed vs
       Unmanaged
 Unmanaged Bindings
Managed vs
       Unmanaged
 Unmanaged Bindings
  Automatic
Managed vs
       Unmanaged
 Unmanaged Bindings
  Automatic
 Managed Bindings
Managed vs
       Unmanaged
 Unmanaged Bindings
  Automatic
 Managed Bindings
  You need to inform the
   LiveBindings engine of Changes.
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
   Managed vs Unmanaged ?
LiveBindings
      What is LiveBindings ?
What can we use LiveBindings for ?
      How does it all work ?
   Managed vs Unmanaged ?
            Demos ..
BEDelphi - LiveBindings in Delphi XE2 - Devia
Demo 1
Demo 1
Binding data from a TDataSet
     to Visual Controls.
BEDelphi - LiveBindings in Delphi XE2 - Devia
Demo 2
Demo 2
Binding properties from one
  component to properties
   of another component.
Expression ?
Expression ?
 Functions
Expression ?
 Functions
  LowerCase(), UpperCase(), Round(),
   FormatDateTime(),
   StrToDateTime(), Format(),
   ToVariant(), ToStr(), Min(), Max()
Expression ?
 Functions
  LowerCase(), UpperCase(), Round(),
   FormatDateTime(),
   StrToDateTime(), Format(),
   ToVariant(), ToStr(), Min(), Max()

 Operators
Expression ?
 Functions
  LowerCase(), UpperCase(), Round(),
   FormatDateTime(),
   StrToDateTime(), Format(),
   ToVariant(), ToStr(), Min(), Max()

 Operators
  + - * / ! = <> < <= =>
Expression ?
 Functions
  LowerCase(), UpperCase(), Round(),
   FormatDateTime(),
   StrToDateTime(), Format(),
   ToVariant(), ToStr(), Min(), Max()

 Operators
  + - * / ! = <> < <= =>
  nil, True, False, Pi
BEDelphi - LiveBindings in Delphi XE2 - Devia
Demo 3
Demo 3
 Binding properties of a TObject
descendant created at run-time to
  TEdit and TLabel components
What can we use
LiveBindings for ?
What can we use
   LiveBindings for ?
 Bind TDataSet data to a Component
What can we use
   LiveBindings for ?
 Bind TDataSet data to a Component
 Bind data from one component to
  another
What can we use
    LiveBindings for ?
 Bind TDataSet data to a Component
 Bind data from one component to
  another
 Bind a combination of data using
  expressions to a property of an
  Object
Stefaan Lesage
Stefaan Lesage

www.devia.be
www.twitter.com/StefaanLesage
www.linkedin.com/in/
stefaanlesage
Stefaan_Lesage on Skype
Questions ?
BEDelphi - LiveBindings in Delphi XE2 - Devia

More Related Content

BEDelphi - LiveBindings in Delphi XE2 - Devia

Editor's Notes

  • #2: \n
  • #3: Welcome ... I&amp;#x2019;m Stefaan Lesage and feel free to get a hold of me / talk to me during the course of the day. You can find me on Twitter @StefaanLesage\n
  • #4: Our own Company, Software Development (mostly Delphi), but from time to time we also do some stuff with Media (Screencasts ...)\n
  • #5: Our own Company, Software Development (mostly Delphi), but from time to time we also do some stuff with Media (Screencasts ...)\n
  • #6: \n
  • #7: \n
  • #8: \n
  • #9: \n
  • #10: \n
  • #11: \n
  • #12: \n
  • #13: Topics we will be discussing today\nMention that we will cover this shortly but use demos to show everything.\n
  • #14: Topics we will be discussing today\nMention that we will cover this shortly but use demos to show everything.\n
  • #15: Topics we will be discussing today\nMention that we will cover this shortly but use demos to show everything.\n
  • #16: Topics we will be discussing today\nMention that we will cover this shortly but use demos to show everything.\n
  • #17: Topics we will be discussing today\nMention that we will cover this shortly but use demos to show everything.\n
  • #18: \n
  • #19: \n
  • #20: \n
  • #21: \n
  • #22: \n
  • #23: \n
  • #24: Some of the Advantages.\n
  • #25: Some of the Advantages.\n
  • #26: Some of the Advantages.\n
  • #27: Some of the Advantages.\n
  • #28: Some of the Advantages.\n
  • #29: Bullet point 1 - Data-Aware controls ... explain that those don&amp;#x2019;t exist in FireMonkey\n
  • #30: Bullet point 1 - Data-Aware controls ... explain that those don&amp;#x2019;t exist in FireMonkey\n
  • #31: Bullet point 1 - Data-Aware controls ... explain that those don&amp;#x2019;t exist in FireMonkey\n
  • #32: \n
  • #33: \n
  • #34: \n
  • #35: \n
  • #36: \n
  • #37: Source = Where do we get our Data From\nSource Expression = How do we get that data from the source\nControl = Where doest our data need to go\nControl Expression = How do we get our data where it should go.\n
  • #38: Source = Where do we get our Data From\nSource Expression = How do we get that data from the source\nControl = Where doest our data need to go\nControl Expression = How do we get our data where it should go.\n
  • #39: Source = Where do we get our Data From\nSource Expression = How do we get that data from the source\nControl = Where doest our data need to go\nControl Expression = How do we get our data where it should go.\n
  • #40: Source = Where do we get our Data From\nSource Expression = How do we get that data from the source\nControl = Where doest our data need to go\nControl Expression = How do we get our data where it should go.\n
  • #41: \n
  • #42: \n
  • #43: \n
  • #44: \n
  • #45: \n
  • #46: \n
  • #47: \n
  • #48: \n
  • #49: \n
  • #50: \n
  • #51: \n
  • #52: \n
  • #53: \n
  • #54: \n
  • #55: Unmanaged = Old DataAware like binding ... Handled Automatically \nManaged bindings require that the LiveBindings engine by notified that a change has occurred, and this does not happen automatically. \n\n
  • #56: Unmanaged = Old DataAware like binding ... Handled Automatically \nManaged bindings require that the LiveBindings engine by notified that a change has occurred, and this does not happen automatically. \n\n
  • #57: Unmanaged = Old DataAware like binding ... Handled Automatically \nManaged bindings require that the LiveBindings engine by notified that a change has occurred, and this does not happen automatically. \n\n
  • #58: Unmanaged = Old DataAware like binding ... Handled Automatically \nManaged bindings require that the LiveBindings engine by notified that a change has occurred, and this does not happen automatically. \n\n
  • #59: The system is hard to explain, but everything will become a lot clearer with a few examples ....\n
  • #60: The system is hard to explain, but everything will become a lot clearer with a few examples ....\n
  • #61: The system is hard to explain, but everything will become a lot clearer with a few examples ....\n
  • #62: The system is hard to explain, but everything will become a lot clearer with a few examples ....\n
  • #63: The system is hard to explain, but everything will become a lot clearer with a few examples ....\n
  • #64: The usual FishFacts demo.\n
  • #65: The usual FishFacts demo.\n
  • #66: In this demo we will use trackbars to spin a 3D image and use expressions to display values in a TLabel.\n
  • #67: In this demo we will use trackbars to spin a 3D image and use expressions to display values in a TLabel.\n
  • #68: Some of the functions you can use in expressions.\n
  • #69: Some of the functions you can use in expressions.\n
  • #70: Some of the functions you can use in expressions.\n
  • #71: Some of the functions you can use in expressions.\n
  • #72: Some of the functions you can use in expressions.\n
  • #73: This is an experimental demo, since I&amp;#x2019;m not quite sure yet that this is the best approach.\n
  • #74: This is an experimental demo, since I&amp;#x2019;m not quite sure yet that this is the best approach.\n
  • #75: \n
  • #76: \n
  • #77: \n
  • #78: \n
  • #79: \n
  • #80: \n