[EXaml] Add code for load EXaml
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / internal / EXaml / Operation / SetBinding.cs
1 using System;
2 using System.Collections.Generic;
3 using System.Reflection;
4 using System.Text;
5 using Tizen.NUI.BaseComponents;
6 using Tizen.NUI.Binding;
7 using Tizen.NUI.Binding.Internals;
8
9 namespace Tizen.NUI.EXaml
10 {
11     internal class SetBinding : Operation
12     {
13         public SetBinding(int instanceIndex, int bindablePropertyIndex, int valueIndex)
14         {
15             this.instanceIndex = instanceIndex;
16             this.bindablePropertyIndex = bindablePropertyIndex;
17             this.valueIndex = valueIndex;
18         }
19
20         public void Do()
21         {
22             BindableObject bindableObject = LoadEXaml.GatheredInstances[instanceIndex] as BindableObject;
23             var property = GatherBindableProperties.GatheredBindableProperties[bindablePropertyIndex];
24             var value = LoadEXaml.GatheredInstances[valueIndex] as BindingBase;
25             bindableObject?.SetBinding(property, value);
26         }
27
28         private int instanceIndex;
29         private int bindablePropertyIndex;
30         private int valueIndex;
31     }
32 }