[NUI] Add IsUsingXaml flag in properties of View and AnimatedVectorImageView
authordongsug.song <dongsug.song@samsung.com>
Fri, 19 Apr 2024 03:21:44 +0000 (12:21 +0900)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Mon, 22 Apr 2024 10:40:32 +0000 (19:40 +0900)
src/Tizen.NUI/Tizen.NUI.csproj
src/Tizen.NUI/src/internal/Application/NUICoreBackend.cs
src/Tizen.NUI/src/public/BaseComponents/AnimatedVectorImageView.cs
src/Tizen.NUI/src/public/BaseComponents/AnimatedVectorImageViewBindableProperty.cs
src/Tizen.NUI/src/public/BaseComponents/View.cs
src/Tizen.NUI/src/public/BaseComponents/ViewAccessibilityProperties.cs
src/Tizen.NUI/src/public/BaseComponents/ViewBindableProperty.cs
src/Tizen.NUI/src/public/BaseComponents/ViewEvent.cs

index 21da0ed..40211c2 100755 (executable)
@@ -5,7 +5,7 @@
         <LangVersion>8.0</LangVersion>
     </PropertyGroup>
     <PropertyGroup>
-        <DefineConstants>$(DefineConstants);NUI_DEBUG_OFF</DefineConstants>
+        <DefineConstants>$(DefineConstants);NUI_DEBUG_OFF;REMOVE_READONLY_FOR_BINDABLE_PROPERTY;</DefineConstants>
     </PropertyGroup>
 
     <ItemGroup>
index 4cba510..6aacc99 100755 (executable)
@@ -20,6 +20,7 @@ using System.ComponentModel;
 using System.Collections.Generic;
 using Tizen.Applications.CoreBackend;
 using Tizen.Applications;
+using Tizen.NUI.BaseComponents;
 
 namespace Tizen.NUI
 {
@@ -392,6 +393,12 @@ namespace Tizen.NUI
 
             Log.Info("NUI", $"NUICorebackend OnPreCreated Called IsUsingXaml={NUIApplication.IsUsingXaml}");
 
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+            if(NUIApplication.IsUsingXaml)
+            {
+                View.CreateBindableProperties();
+            }
+#endif
             Tizen.Tracer.Begin("[NUI] OnInitialized(): OnPreCreated event handler");
             var preCreateHandler = Handlers[EventType.PreCreated] as Action;
             preCreateHandler?.Invoke();
index a7b39c8..037ae9c 100755 (executable)
@@ -17,7 +17,6 @@
 
 using global::System;
 using System.ComponentModel;
-using Tizen.NUI;
 using Tizen.NUI.Binding;
 
 namespace Tizen.NUI.BaseComponents
@@ -32,6 +31,8 @@ namespace Tizen.NUI.BaseComponents
 
         static AnimatedVectorImageView()
         {
+            //to get "IsUsingXaml" feature working at preload, we need to remove readonly for BindableProperty.
+            //this AnimatedVectorImageView is not preloaded.
             if (NUIApplication.IsUsingXaml)
             {
                 ResourceURLProperty = BindableProperty.Create(nameof(ResourceURL), typeof(string), typeof(AnimatedVectorImageView), string.Empty,
index 3e12d1d..4782618 100755 (executable)
@@ -26,14 +26,16 @@ namespace Tizen.NUI.BaseComponents
         /// ResourceURLProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ResourceURLProperty = null;
+#else
         public static readonly BindableProperty ResourceURLProperty = null;
-
+#endif
         internal static void SetInternalResourceURLProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
             instance.InternalResourceURL = (string)newValue;
         }
-        
         internal static object GetInternalResourceURLProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
@@ -44,14 +46,16 @@ namespace Tizen.NUI.BaseComponents
         /// ResourceUrlProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static new readonly BindableProperty ResourceUrlProperty = null;
-        
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static new BindableProperty ResourceUrlProperty = null;
+#else
+        public static readonly new BindableProperty ResourceUrlProperty = null;
+#endif
         internal static void SetInternalResourceUrlProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
             instance.InternalResourceUrl = (string)newValue;
         }
-
         internal static object GetInternalResourceUrlProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
@@ -62,8 +66,11 @@ namespace Tizen.NUI.BaseComponents
         /// RepeatCountProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty RepeatCountProperty = null;
+#else
         public static readonly BindableProperty RepeatCountProperty = null;
-        
+#endif
         internal static void SetInternalRepeatCountProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
@@ -82,8 +89,11 @@ namespace Tizen.NUI.BaseComponents
         /// CurrentFrameProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static new readonly BindableProperty CurrentFrameProperty = null;
-        
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static new BindableProperty CurrentFrameProperty = null;
+#else
+        public static readonly new BindableProperty CurrentFrameProperty = null;
+#endif
         internal static void SetInternalCurrentFrameProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
@@ -92,7 +102,6 @@ namespace Tizen.NUI.BaseComponents
                 instance.InternalCurrentFrame = (int)newValue;
             }
         }
-        
         internal static object GetInternalCurrentFrameProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
@@ -103,8 +112,11 @@ namespace Tizen.NUI.BaseComponents
         /// RepeatModeProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty RepeatModeProperty = null;
+#else
         public static readonly BindableProperty RepeatModeProperty = null;
-        
+#endif
         static internal void SetInternalRepeatModeProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
@@ -113,7 +125,6 @@ namespace Tizen.NUI.BaseComponents
                 instance.InternalRepeatMode = (Tizen.NUI.BaseComponents.AnimatedVectorImageView.RepeatModes)newValue;
             }
         }
-        
         static internal object GetInternalRepeatModeProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.AnimatedVectorImageView)bindable;
index 940dee3..a3926cf 100755 (executable)
@@ -89,11 +89,17 @@ namespace Tizen.NUI.BaseComponents
 
         static View()
         {
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+            //to get "IsUsingXaml" feature working at preload, we need to remove readonly for BindableProperty.
+#else
             if (NUIApplication.IsUsingXaml)
             {
-#if REMOVE_READONLY
-                CreateBindableProperties();
-#else
+                StyleNameProperty = BindableProperty.Create(nameof(StyleName), typeof(string), typeof(View), string.Empty,
+                    propertyChanged: SetInternalStyleNameProperty, defaultValueCreator: GetInternalStyleNameProperty);
+
+                KeyInputFocusProperty = BindableProperty.Create(nameof(KeyInputFocus), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalKeyInputFocusProperty, defaultValueCreator: GetInternalKeyInputFocusProperty);
+
                 BackgroundColorProperty = BindableProperty.Create(nameof(BackgroundColor), typeof(Color), typeof(View), null,
                     propertyChanged: SetInternalBackgroundColorProperty, defaultValueCreator: GetInternalBackgroundColorProperty);
 
@@ -109,15 +115,93 @@ namespace Tizen.NUI.BaseComponents
                 ColorBlueProperty = BindableProperty.Create(nameof(ColorBlue), typeof(float), typeof(View), default(float),
                     propertyChanged: SetInternalColorBlueProperty, defaultValueCreator: GetInternalColorBlueProperty);
 
+                BackgroundImageProperty = BindableProperty.Create(nameof(BackgroundImage), typeof(string), typeof(View), default(string),
+                    propertyChanged: SetInternalBackgroundImageProperty, defaultValueCreator: GetInternalBackgroundImageProperty);
+
+                BackgroundImageBorderProperty = BindableProperty.Create(nameof(BackgroundImageBorder), typeof(Rectangle), typeof(View), default(Rectangle),
+                    propertyChanged: SetInternalBackgroundImageBorderProperty, defaultValueCreator: GetInternalBackgroundImageBorderProperty);
+
+                BackgroundProperty = BindableProperty.Create(nameof(Background), typeof(PropertyMap), typeof(View), null,
+                    propertyChanged: SetInternalBackgroundProperty, defaultValueCreator: GetInternalBackgroundProperty);
+
+                StateProperty = BindableProperty.Create(nameof(State), typeof(States), typeof(View), States.Normal,
+                    propertyChanged: SetInternalStateProperty, defaultValueCreator: GetInternalStateProperty);
+
+                SubStateProperty = BindableProperty.Create(nameof(SubState), typeof(States), typeof(View), States.Normal,
+                    propertyChanged: SetInternalSubStateProperty, defaultValueCreator: GetInternalSubStateProperty);
+
+                TooltipProperty = BindableProperty.Create(nameof(Tooltip), typeof(PropertyMap), typeof(View), null,
+                    propertyChanged: SetInternalTooltipProperty, defaultValueCreator: GetInternalTooltipProperty);
+
+                FlexProperty = BindableProperty.Create(nameof(Flex), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalFlexProperty, defaultValueCreator: GetInternalFlexProperty);
+
+                AlignSelfProperty = BindableProperty.Create(nameof(AlignSelf), typeof(int), typeof(View), default(int),
+                    propertyChanged: SetInternalAlignSelfProperty, defaultValueCreator: GetInternalAlignSelfProperty);
+
+                FlexMarginProperty = BindableProperty.Create(nameof(FlexMargin), typeof(Vector4), typeof(View), null,
+                    propertyChanged: SetInternalFlexMarginProperty, defaultValueCreator: GetInternalFlexMarginProperty);
+
                 CellIndexProperty = BindableProperty.Create(nameof(CellIndex), typeof(Vector2), typeof(View), null,
                     propertyChanged: SetInternalCellIndexProperty, defaultValueCreator: GetInternalCellIndexProperty);
 
+                RowSpanProperty = BindableProperty.Create(nameof(RowSpan), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalRowSpanProperty, defaultValueCreator: GetInternalRowSpanProperty);
+
+                ColumnSpanProperty = BindableProperty.Create(nameof(ColumnSpan), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalColumnSpanProperty, defaultValueCreator: GetInternalColumnSpanProperty);
+
+                CellHorizontalAlignmentProperty = BindableProperty.Create(nameof(CellHorizontalAlignment), typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left,
+                    propertyChanged: SetInternalCellHorizontalAlignmentProperty, defaultValueCreator: GetInternalCellHorizontalAlignmentProperty);
+
+                CellVerticalAlignmentProperty = BindableProperty.Create(nameof(CellVerticalAlignment), typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top,
+                    propertyChanged: SetInternalCellVerticalAlignmentProperty, defaultValueCreator: GetInternalCellVerticalAlignmentProperty);
+
+                WeightProperty = BindableProperty.Create(nameof(Weight), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalWeightProperty, defaultValueCreator: GetInternalWeightProperty);
+
+                LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null,
+                    propertyChanged: SetInternalLeftFocusableViewProperty, defaultValueCreator: GetInternalLeftFocusableViewProperty);
+
+                RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null,
+                    propertyChanged: SetInternalRightFocusableViewProperty, defaultValueCreator: GetInternalRightFocusableViewProperty);
+
+                UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null,
+                    propertyChanged: SetInternalUpFocusableViewProperty, defaultValueCreator: GetInternalUpFocusableViewProperty);
+
+                DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null,
+                    propertyChanged: SetInternalDownFocusableViewProperty, defaultValueCreator: GetInternalDownFocusableViewProperty);
+
+                ClockwiseFocusableViewProperty = BindableProperty.Create(nameof(View.ClockwiseFocusableView), typeof(View), typeof(View), null,
+                    propertyChanged: SetInternalClockwiseFocusableViewProperty, defaultValueCreator: GetInternalClockwiseFocusableViewProperty);
+
+                CounterClockwiseFocusableViewProperty = BindableProperty.Create(nameof(View.CounterClockwiseFocusableView), typeof(View), typeof(View), null,
+                    propertyChanged: SetInternalCounterClockwiseFocusableViewProperty, defaultValueCreator: GetInternalCounterClockwiseFocusableViewProperty);
+
+                FocusableProperty = BindableProperty.Create(nameof(Focusable), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalFocusableProperty, defaultValueCreator: GetInternalFocusableProperty);
+
+                FocusableChildrenProperty = BindableProperty.Create(nameof(FocusableChildren), typeof(bool), typeof(View), true,
+                    propertyChanged: SetInternalFocusableChildrenProperty, defaultValueCreator: GetInternalFocusableChildrenProperty);
+
+                FocusableInTouchProperty = BindableProperty.Create(nameof(FocusableInTouch), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalFocusableInTouchProperty, defaultValueCreator: GetInternalFocusableInTouchProperty);
+
                 Size2DProperty = BindableProperty.Create(nameof(Size2D), typeof(Size2D), typeof(View), null,
                     propertyChanged: SetInternalSize2DProperty, defaultValueCreator: GetInternalSize2DProperty);
 
+                OpacityProperty = BindableProperty.Create(nameof(Opacity), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalOpacityProperty, defaultValueCreator: GetInternalOpacityProperty);
+
                 Position2DProperty = BindableProperty.Create(nameof(Position2D), typeof(Position2D), typeof(View), null,
                     propertyChanged: SetInternalPosition2DProperty, defaultValueCreator: GetInternalPosition2DProperty);
 
+                PositionUsesPivotPointProperty = BindableProperty.Create(nameof(PositionUsesPivotPoint), typeof(bool), typeof(View), true,
+                    propertyChanged: SetInternalPositionUsesPivotPointProperty, defaultValueCreator: GetInternalPositionUsesPivotPointProperty);
+
+                SiblingOrderProperty = BindableProperty.Create(nameof(SiblingOrder), typeof(int), typeof(View), default(int),
+                    propertyChanged: SetInternalSiblingOrderProperty, defaultValueCreator: GetInternalSiblingOrderProperty);
+
                 ParentOriginProperty = BindableProperty.Create(nameof(ParentOrigin), typeof(Position), typeof(View), null,
                     propertyChanged: SetInternalParentOriginProperty, defaultValueCreator: GetInternalParentOriginProperty);
 
@@ -142,6 +226,9 @@ namespace Tizen.NUI.BaseComponents
                 PositionZProperty = BindableProperty.Create(nameof(PositionZ), typeof(float), typeof(View), default(float),
                     propertyChanged: SetInternalPositionZProperty, defaultValueCreator: GetInternalPositionZProperty);
 
+                OrientationProperty = BindableProperty.Create(nameof(Orientation), typeof(Rotation), typeof(View), null,
+                    propertyChanged: SetInternalOrientationProperty, defaultValueCreator: GetInternalOrientationProperty);
+
                 ScaleProperty = BindableProperty.Create(nameof(Scale), typeof(Vector3), typeof(View), null,
                     propertyChanged: SetInternalScaleProperty, defaultValueCreator: GetInternalScaleProperty);
 
@@ -157,9 +244,45 @@ namespace Tizen.NUI.BaseComponents
                 NameProperty = BindableProperty.Create(nameof(Name), typeof(string), typeof(View), string.Empty,
                     propertyChanged: SetInternalNameProperty, defaultValueCreator: GetInternalNameProperty);
 
+                SensitiveProperty = BindableProperty.Create(nameof(Sensitive), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalSensitiveProperty, defaultValueCreator: GetInternalSensitiveProperty);
+
+                IsEnabledProperty = BindableProperty.Create(nameof(IsEnabled), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalIsEnabledProperty, defaultValueCreator: GetInternalIsEnabledProperty);
+
+                DispatchKeyEventsProperty = BindableProperty.Create(nameof(DispatchKeyEvents), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalDispatchKeyEventsProperty, defaultValueCreator: GetInternalDispatchKeyEventsProperty);
+
+                LeaveRequiredProperty = BindableProperty.Create(nameof(LeaveRequired), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalLeaveRequiredProperty, defaultValueCreator: GetInternalLeaveRequiredProperty);
+
+                InheritOrientationProperty = BindableProperty.Create(nameof(InheritOrientation), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalInheritOrientationProperty, defaultValueCreator: GetInternalInheritOrientationProperty);
+
+                InheritScaleProperty = BindableProperty.Create(nameof(InheritScale), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalInheritScaleProperty, defaultValueCreator: GetInternalInheritScaleProperty);
+
+                DrawModeProperty = BindableProperty.Create(nameof(DrawMode), typeof(DrawModeType), typeof(View), DrawModeType.Normal,
+                    propertyChanged: SetInternalDrawModeProperty, defaultValueCreator: GetInternalDrawModeProperty);
+
                 SizeModeFactorProperty = BindableProperty.Create(nameof(SizeModeFactor), typeof(Vector3), typeof(View), null,
                     propertyChanged: SetInternalSizeModeFactorProperty, defaultValueCreator: GetInternalSizeModeFactorProperty);
 
+                WidthResizePolicyProperty = BindableProperty.Create(nameof(WidthResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed,
+                    propertyChanged: SetInternalWidthResizePolicyProperty, defaultValueCreator: GetInternalWidthResizePolicyProperty);
+
+                HeightResizePolicyProperty = BindableProperty.Create(nameof(HeightResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed,
+                    propertyChanged: SetInternalHeightResizePolicyProperty, defaultValueCreator: GetInternalHeightResizePolicyProperty);
+
+                SizeScalePolicyProperty = BindableProperty.Create(nameof(SizeScalePolicy), typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet,
+                    propertyChanged: SetInternalSizeScalePolicyProperty, defaultValueCreator: GetInternalSizeScalePolicyProperty);
+
+                WidthForHeightProperty = BindableProperty.Create(nameof(WidthForHeight), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalWidthForHeightProperty, defaultValueCreator: GetInternalWidthForHeightProperty);
+
+                HeightForWidthProperty = BindableProperty.Create(nameof(HeightForWidth), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalHeightForWidthProperty, defaultValueCreator: GetInternalHeightForWidthProperty);
+
                 PaddingProperty = BindableProperty.Create(nameof(Padding), typeof(Extents), typeof(View), null,
                     propertyChanged: SetInternalPaddingProperty, defaultValueCreator: GetInternalPaddingProperty);
 
@@ -172,12 +295,134 @@ namespace Tizen.NUI.BaseComponents
                 MaximumSizeProperty = BindableProperty.Create(nameof(MaximumSize), typeof(Size2D), typeof(View), null,
                     propertyChanged: SetInternalMaximumSizeProperty, defaultValueCreator: GetInternalMaximumSizeProperty);
 
+                InheritPositionProperty = BindableProperty.Create(nameof(InheritPosition), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalInheritPositionProperty, defaultValueCreator: GetInternalInheritPositionProperty);
+
+                ClippingModeProperty = BindableProperty.Create(nameof(ClippingMode), typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled,
+                    propertyChanged: SetInternalClippingModeProperty, defaultValueCreator: GetInternalClippingModeProperty);
+
+                InheritLayoutDirectionProperty = BindableProperty.Create(nameof(InheritLayoutDirection), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalInheritLayoutDirectionProperty, defaultValueCreator: GetInternalInheritLayoutDirectionProperty);
+
+                LayoutDirectionProperty = BindableProperty.Create(nameof(LayoutDirection), typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR,
+                    propertyChanged: SetInternalLayoutDirectionProperty, defaultValueCreator: GetInternalLayoutDirectionProperty);
+
                 MarginProperty = BindableProperty.Create(nameof(Margin), typeof(Extents), typeof(View), null,
                     propertyChanged: SetInternalMarginProperty, defaultValueCreator: GetInternalMarginProperty);
 
+                UpdateAreaHintProperty = BindableProperty.Create(nameof(UpdateAreaHint), typeof(Vector4), typeof(View), null,
+                    propertyChanged: SetInternalUpdateAreaHintProperty, defaultValueCreator: GetInternalUpdateAreaHintProperty);
+
+                ImageShadowProperty = BindableProperty.Create(nameof(ImageShadow), typeof(ImageShadow), typeof(View), null,
+                    propertyChanged: SetInternalImageShadowProperty, defaultValueCreator: GetInternalImageShadowProperty);
+
+                BoxShadowProperty = BindableProperty.Create(nameof(BoxShadow), typeof(Shadow), typeof(View), null,
+                    propertyChanged: SetInternalBoxShadowProperty, defaultValueCreator: GetInternalBoxShadowProperty);
+
+                CornerRadiusProperty = BindableProperty.Create(nameof(CornerRadius), typeof(Vector4), typeof(View), null,
+                    propertyChanged: SetInternalCornerRadiusProperty, defaultValueCreator: GetInternalCornerRadiusProperty);
+
+                CornerRadiusPolicyProperty = BindableProperty.Create(nameof(CornerRadiusPolicy), typeof(VisualTransformPolicyType), typeof(View), VisualTransformPolicyType.Absolute,
+                    propertyChanged: SetInternalCornerRadiusPolicyProperty, defaultValueCreator: GetInternalCornerRadiusPolicyProperty);
+
+                BorderlineWidthProperty = BindableProperty.Create(nameof(BorderlineWidth), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalBorderlineWidthProperty, defaultValueCreator: GetInternalBorderlineWidthProperty);
+
+                BorderlineColorProperty = BindableProperty.Create(nameof(BorderlineColor), typeof(Color), typeof(View), null,
+                    propertyChanged: SetInternalBorderlineColorProperty, defaultValueCreator: GetInternalBorderlineColorProperty);
+
+                BorderlineColorSelectorProperty = BindableProperty.Create(nameof(BorderlineColorSelector), typeof(Selector<Color>), typeof(View), null,
+                    propertyChanged: SetInternalBorderlineColorSelectorProperty, defaultValueCreator: GetInternalBorderlineColorSelectorProperty);
+
+                BorderlineOffsetProperty = BindableProperty.Create(nameof(BorderlineOffset), typeof(float), typeof(View), default(float),
+                    propertyChanged: SetInternalBorderlineOffsetProperty, defaultValueCreator: GetInternalBorderlineOffsetProperty);
+
+                EnableControlStateProperty = BindableProperty.Create(nameof(EnableControlState), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalEnableControlStateProperty, defaultValueCreator: GetInternalEnableControlStateProperty);
+
+                ThemeChangeSensitiveProperty = BindableProperty.Create(nameof(ThemeChangeSensitive), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalThemeChangeSensitiveProperty, defaultValueCreator: GetInternalThemeChangeSensitiveProperty);
+
+                AccessibilityNameProperty = BindableProperty.Create(nameof(AccessibilityName), typeof(string), typeof(View), string.Empty,
+                    propertyChanged: SetInternalAccessibilityNameProperty, defaultValueCreator: GetInternalAccessibilityNameProperty);
+
+                AccessibilityDescriptionProperty = BindableProperty.Create(nameof(AccessibilityDescription), typeof(string), typeof(View), string.Empty,
+                    propertyChanged: SetInternalAccessibilityDescriptionProperty, defaultValueCreator: GetInternalAccessibilityDescriptionProperty);
+
+                AccessibilityTranslationDomainProperty = BindableProperty.Create(nameof(AccessibilityTranslationDomain), typeof(string), typeof(View), string.Empty,
+                    propertyChanged: SetInternalAccessibilityTranslationDomainProperty, defaultValueCreator: GetInternalAccessibilityTranslationDomainProperty);
+
+                AccessibilityRoleProperty = BindableProperty.Create(nameof(AccessibilityRole), typeof(Role), typeof(View), default(Role),
+                    propertyChanged: SetInternalAccessibilityRoleProperty, defaultValueCreator: GetInternalAccessibilityRoleProperty);
+
+                AccessibilityHighlightableProperty = BindableProperty.Create(nameof(AccessibilityHighlightable), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalAccessibilityHighlightableProperty, defaultValueCreator: GetInternalAccessibilityHighlightableProperty);
+
+                AccessibilityHiddenProperty = BindableProperty.Create(nameof(AccessibilityHidden), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalAccessibilityHiddenProperty, defaultValueCreator: GetInternalAccessibilityHiddenProperty);
+
+                ExcludeLayoutingProperty = BindableProperty.Create(nameof(ExcludeLayouting), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalExcludeLayoutingProperty, defaultValueCreator: GetInternalExcludeLayoutingProperty);
+
+                TooltipTextProperty = BindableProperty.Create(nameof(TooltipText), typeof(string), typeof(View), string.Empty,
+                    propertyChanged: SetInternalTooltipTextProperty, defaultValueCreator: GetInternalTooltipTextProperty);
+
+                PositionUsesAnchorPointProperty = BindableProperty.Create(nameof(PositionUsesAnchorPoint), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalPositionUsesAnchorPointProperty, defaultValueCreator: GetInternalPositionUsesAnchorPointProperty);
+
                 AnchorPointProperty = BindableProperty.Create(nameof(AnchorPoint), typeof(Tizen.NUI.Position), typeof(View), null,
                     propertyChanged: SetInternalAnchorPointProperty, defaultValueCreator: GetInternalAnchorPointProperty);
-#endif
+
+                WidthSpecificationProperty = BindableProperty.Create(nameof(WidthSpecification), typeof(int), typeof(View), 0,
+                    propertyChanged: SetInternalWidthSpecificationProperty, defaultValueCreator: GetInternalWidthSpecificationProperty);
+
+                HeightSpecificationProperty = BindableProperty.Create(nameof(HeightSpecification), typeof(int), typeof(View), 0,
+                    propertyChanged: SetInternalHeightSpecificationProperty, defaultValueCreator: GetInternalHeightSpecificationProperty);
+
+                LayoutTransitionProperty = BindableProperty.Create(nameof(LayoutTransition), typeof(Tizen.NUI.LayoutTransition), typeof(View), null,
+                    propertyChanged: SetInternalLayoutTransitionProperty, defaultValueCreator: GetInternalLayoutTransitionProperty);
+
+                PaddingEXProperty = BindableProperty.Create(nameof(PaddingEX), typeof(Tizen.NUI.Extents), typeof(View), null,
+                    propertyChanged: SetInternalPaddingEXProperty, defaultValueCreator: GetInternalPaddingEXProperty);
+
+                LayoutProperty = BindableProperty.Create(nameof(Layout), typeof(Tizen.NUI.LayoutItem), typeof(View), null,
+                    propertyChanged: SetInternalLayoutProperty, defaultValueCreator: GetInternalLayoutProperty);
+
+                BackgroundImageSynchronosLoadingProperty = BindableProperty.Create(nameof(BackgroundImageSynchronosLoading), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalBackgroundImageSynchronosLoadingProperty, defaultValueCreator: GetInternalBackgroundImageSynchronosLoadingProperty);
+
+                BackgroundImageSynchronousLoadingProperty = BindableProperty.Create(nameof(BackgroundImageSynchronousLoading), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalBackgroundImageSynchronousLoadingProperty, defaultValueCreator: GetInternalBackgroundImageSynchronousLoadingProperty);
+
+                EnableControlStatePropagationProperty = BindableProperty.Create(nameof(EnableControlStatePropagation), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalEnableControlStatePropagationProperty, defaultValueCreator: GetInternalEnableControlStatePropagationProperty);
+
+                PropagatableControlStatesProperty = BindableProperty.Create(nameof(PropagatableControlStates), typeof(ControlState), typeof(View), ControlState.All,
+                    propertyChanged: SetInternalPropagatableControlStatesProperty, defaultValueCreator: GetInternalPropagatableControlStatesProperty);
+
+                GrabTouchAfterLeaveProperty = BindableProperty.Create(nameof(GrabTouchAfterLeave), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalGrabTouchAfterLeaveProperty, defaultValueCreator: GetInternalGrabTouchAfterLeaveProperty);
+
+                AllowOnlyOwnTouchProperty = BindableProperty.Create(nameof(AllowOnlyOwnTouch), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalAllowOnlyOwnTouchProperty, defaultValueCreator: GetInternalAllowOnlyOwnTouchProperty);
+
+                BlendEquationProperty = BindableProperty.Create(nameof(BlendEquation), typeof(BlendEquationType), typeof(View), default(BlendEquationType),
+                    propertyChanged: SetInternalBlendEquationProperty, defaultValueCreator: GetInternalBlendEquationProperty);
+
+                TransitionOptionsProperty = BindableProperty.Create(nameof(TransitionOptions), typeof(TransitionOptions), typeof(View), default(TransitionOptions),
+                    propertyChanged: SetInternalTransitionOptionsProperty, defaultValueCreator: GetInternalTransitionOptionsProperty);
+
+                AutomationIdProperty = BindableProperty.Create(nameof(AutomationId), typeof(string), typeof(View), string.Empty,
+                    propertyChanged: SetInternalAutomationIdProperty, defaultValueCreator: GetInternalAutomationIdProperty);
+
+                TouchAreaOffsetProperty = BindableProperty.Create(nameof(TouchAreaOffset), typeof(Offset), typeof(View), default(Offset),
+                    propertyChanged: SetInternalTouchAreaOffsetProperty, defaultValueCreator: GetInternalTouchAreaOffsetProperty);
+
+                DispatchTouchMotionProperty = BindableProperty.Create(nameof(DispatchTouchMotion), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalDispatchTouchMotionProperty, defaultValueCreator: GetInternalDispatchTouchMotionProperty);
+
+                DispatchHoverMotionProperty = BindableProperty.Create(nameof(DispatchHoverMotion), typeof(bool), typeof(View), false,
+                    propertyChanged: SetInternalDispatchHoverMotionProperty, defaultValueCreator: GetInternalDispatchHoverMotionProperty);
 
                 RegisterPropertyGroup(PositionProperty, positionPropertyGroup);
                 RegisterPropertyGroup(Position2DProperty, positionPropertyGroup);
@@ -194,21 +439,21 @@ namespace Tizen.NUI.BaseComponents
                 RegisterPropertyGroup(ScaleYProperty, scalePropertyGroup);
                 RegisterPropertyGroup(ScaleZProperty, scalePropertyGroup);
             }
-
-            RegisterAccessibilityDelegate();
+#endif
         }
 
         static internal new void Preload()
         {
             Container.Preload();
 
-            if (NUIApplication.IsUsingXaml)
-            {
-                // Do nothing. Just call for load static values.
-                var temporalPositionPropertyGroup = positionPropertyGroup;
-                var temporalSizePropertyGroup = sizePropertyGroup;
-                var temporalScalePropertyGroup = scalePropertyGroup;
-            }
+            // not needed, at preload, APP can not set the "IsUsingXaml" flag, it have the default value at preload
+            // if (NUIApplication.IsUsingXaml)
+            // {
+            //     // Do nothing. Just call for load static values.
+            //     var temporalPositionPropertyGroup = positionPropertyGroup;
+            //     var temporalSizePropertyGroup = sizePropertyGroup;
+            //     var temporalScalePropertyGroup = scalePropertyGroup;
+            // }
         }
 
         /// <summary>
@@ -526,11 +771,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(ExcludeLayoutingProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(ExcludeLayoutingProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalExcludeLayoutingProperty(this);
+                }
             }
             set
             {
-                SetValue(ExcludeLayoutingProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(ExcludeLayoutingProperty, value);
+                }
+                else
+                {
+                    SetInternalExcludeLayoutingProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -561,11 +820,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (string)GetValue(StyleNameProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (string)GetValue(StyleNameProperty);
+                }
+                else
+                {
+                    return (string)GetInternalStyleNameProperty(this);
+                }
             }
             set
             {
-                SetValue(StyleNameProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(StyleNameProperty, value);
+                }
+                else
+                {
+                    SetInternalStyleNameProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -578,11 +851,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(KeyInputFocusProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(KeyInputFocusProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalKeyInputFocusProperty(this);
+                }
             }
             set
             {
-                SetValue(KeyInputFocusProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(KeyInputFocusProperty, value);
+                }
+                else
+                {
+                    SetInternalKeyInputFocusProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -648,11 +935,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (string)GetValue(BackgroundImageProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (string)GetValue(BackgroundImageProperty);
+                }
+                else
+                {
+                    return (string)GetInternalBackgroundImageProperty(this);
+                }
             }
             set
             {
-                SetValue(BackgroundImageProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BackgroundImageProperty, value);
+                }
+                else
+                {
+                    SetInternalBackgroundImageProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -666,11 +967,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Rectangle)GetValue(BackgroundImageBorderProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Rectangle)GetValue(BackgroundImageBorderProperty);
+                }
+                else
+                {
+                    return (Rectangle)GetInternalBackgroundImageBorderProperty(this);
+                }
             }
             set
             {
-                SetValue(BackgroundImageBorderProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BackgroundImageBorderProperty, value);
+                }
+                else
+                {
+                    SetInternalBackgroundImageBorderProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -683,11 +998,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (PropertyMap)GetValue(BackgroundProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (PropertyMap)GetValue(BackgroundProperty);
+                }
+                else
+                {
+                    return (PropertyMap)GetInternalBackgroundProperty(this);
+                }
             }
             set
             {
-                SetValue(BackgroundProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BackgroundProperty, value);
+                }
+                else
+                {
+                    SetInternalBackgroundProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -717,11 +1046,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (ImageShadow)GetValue(ImageShadowProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (ImageShadow)GetValue(ImageShadowProperty);
+                }
+                else
+                {
+                    return (ImageShadow)GetInternalImageShadowProperty(this);
+                }
             }
             set
             {
-                SetValue(ImageShadowProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(ImageShadowProperty, value);
+                }
+                else
+                {
+                    SetInternalImageShadowProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -748,11 +1091,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Shadow)GetValue(BoxShadowProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Shadow)GetValue(BoxShadowProperty);
+                }
+                else
+                {
+                    return (Shadow)GetInternalBoxShadowProperty(this);
+                }
             }
             set
             {
-                SetValue(BoxShadowProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BoxShadowProperty, value);
+                }
+                else
+                {
+                    SetInternalBoxShadowProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -777,11 +1134,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Vector4)GetValue(CornerRadiusProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Vector4)GetValue(CornerRadiusProperty);
+                }
+                else
+                {
+                    return (Vector4)GetInternalCornerRadiusProperty(this);
+                }
             }
             set
             {
-                SetValue(CornerRadiusProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(CornerRadiusProperty, value);
+                }
+                else
+                {
+                    SetInternalCornerRadiusProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -794,8 +1165,29 @@ namespace Tizen.NUI.BaseComponents
         /// <since_tizen> 9 </since_tizen>
         public VisualTransformPolicyType CornerRadiusPolicy
         {
-            get => (VisualTransformPolicyType)GetValue(CornerRadiusPolicyProperty);
-            set => SetValue(CornerRadiusPolicyProperty, value);
+            get
+            {
+
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (VisualTransformPolicyType)GetValue(CornerRadiusPolicyProperty);
+                }
+                else
+                {
+                    return (VisualTransformPolicyType)GetInternalCornerRadiusPolicyProperty(this);
+                }
+            }
+            set
+            {
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(CornerRadiusPolicyProperty, value);
+                }
+                else
+                {
+                    SetInternalCornerRadiusPolicyProperty(this, null, value);
+                }
+            }
         }
 
         /// <summary>
@@ -815,11 +1207,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (float)GetValue(BorderlineWidthProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (float)GetValue(BorderlineWidthProperty);
+                }
+                else
+                {
+                    return (float)GetInternalBorderlineWidthProperty(this);
+                }
             }
             set
             {
-                SetValue(BorderlineWidthProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BorderlineWidthProperty, value);
+                }
+                else
+                {
+                    SetInternalBorderlineWidthProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -841,11 +1247,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Color)GetValue(BorderlineColorProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Color)GetValue(BorderlineColorProperty);
+                }
+                else
+                {
+                    return (Color)GetInternalBorderlineColorProperty(this);
+                }
             }
             set
             {
-                SetValue(BorderlineColorProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BorderlineColorProperty, value);
+                }
+                else
+                {
+                    SetInternalBorderlineColorProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -859,11 +1279,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Selector<Color>)GetValue(BorderlineColorSelectorProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Selector<Color>)GetValue(BorderlineColorSelectorProperty);
+                }
+                else
+                {
+                    return (Selector<Color>)GetInternalBorderlineColorSelectorProperty(this);
+                }
             }
             set
             {
-                SetValue(BorderlineColorSelectorProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BorderlineColorSelectorProperty, value);
+                }
+                else
+                {
+                    SetInternalBorderlineColorSelectorProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -889,11 +1323,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (float)GetValue(BorderlineOffsetProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (float)GetValue(BorderlineOffsetProperty);
+                }
+                else
+                {
+                    return (float)GetInternalBorderlineOffsetProperty(this);
+                }
             }
             set
             {
-                SetValue(BorderlineOffsetProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BorderlineOffsetProperty, value);
+                }
+                else
+                {
+                    SetInternalBorderlineOffsetProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -906,11 +1354,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (States)GetValue(StateProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (States)GetValue(StateProperty);
+                }
+                else
+                {
+                    return (States)GetInternalStateProperty(this);
+                }
             }
             set
             {
-                SetValue(StateProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(StateProperty, value);
+                }
+                else
+                {
+                    SetInternalStateProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -923,11 +1385,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (States)GetValue(SubStateProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (States)GetValue(SubStateProperty);
+                }
+                else
+                {
+                    return (States)GetInternalSubStateProperty(this);
+                }
             }
             set
             {
-                SetValue(SubStateProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(SubStateProperty, value);
+                }
+                else
+                {
+                    SetInternalSubStateProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -940,11 +1416,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (PropertyMap)GetValue(TooltipProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (PropertyMap)GetValue(TooltipProperty);
+                }
+                else
+                {
+                    return (PropertyMap)GetInternalTooltipProperty(this);
+                }
             }
             set
             {
-                SetValue(TooltipProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(TooltipProperty, value);
+                }
+                else
+                {
+                    SetInternalTooltipProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -957,11 +1447,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return GetValue(TooltipTextProperty) as string;
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return GetValue(TooltipTextProperty) as string;
+                }
+                else
+                {
+                    return GetInternalTooltipTextProperty(this) as string;
+                }
             }
             set
             {
-                SetValue(TooltipTextProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(TooltipTextProperty, value);
+                }
+                else
+                {
+                    SetInternalTooltipTextProperty(this, null, value);
+                }
             }
         }
 
@@ -1011,11 +1515,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (float)GetValue(FlexProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (float)GetValue(FlexProperty);
+                }
+                else
+                {
+                    return (float)GetInternalFlexProperty(this);
+                }
             }
             set
             {
-                SetValue(FlexProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(FlexProperty, value);
+                }
+                else
+                {
+                    SetInternalFlexProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1030,11 +1548,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (int)GetValue(AlignSelfProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (int)GetValue(AlignSelfProperty);
+                }
+                else
+                {
+                    return (int)GetInternalAlignSelfProperty(this);
+                }
             }
             set
             {
-                SetValue(AlignSelfProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AlignSelfProperty, value);
+                }
+                else
+                {
+                    SetInternalAlignSelfProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1052,12 +1584,27 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                Vector4 temp = (Vector4)GetValue(FlexMarginProperty);
-                return new Vector4(OnFlexMarginChanged, temp.X, temp.Y, temp.Z, temp.W);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    Vector4 temp = (Vector4)GetValue(FlexMarginProperty);
+                    return new Vector4(OnFlexMarginChanged, temp.X, temp.Y, temp.Z, temp.W);
+                }
+                else
+                {
+                    Vector4 temp = (Vector4)GetInternalFlexMarginProperty(this);
+                    return new Vector4(OnFlexMarginChanged, temp.X, temp.Y, temp.Z, temp.W);
+                }
             }
             set
             {
-                SetValue(FlexMarginProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(FlexMarginProperty, value);
+                }
+                else
+                {
+                    SetInternalFlexMarginProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1123,11 +1670,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (float)GetValue(RowSpanProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (float)GetValue(RowSpanProperty);
+                }
+                else
+                {
+                    return (float)GetInternalRowSpanProperty(this);
+                }
             }
             set
             {
-                SetValue(RowSpanProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(RowSpanProperty, value);
+                }
+                else
+                {
+                    SetInternalRowSpanProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1143,11 +1704,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (float)GetValue(ColumnSpanProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (float)GetValue(ColumnSpanProperty);
+                }
+                else
+                {
+                    return (float)GetInternalColumnSpanProperty(this);
+                }
             }
             set
             {
-                SetValue(ColumnSpanProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(ColumnSpanProperty, value);
+                }
+                else
+                {
+                    SetInternalColumnSpanProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1163,11 +1738,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (HorizontalAlignmentType)GetValue(CellHorizontalAlignmentProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (HorizontalAlignmentType)GetValue(CellHorizontalAlignmentProperty);
+                }
+                else
+                {
+                    return (HorizontalAlignmentType)GetInternalCellHorizontalAlignmentProperty(this);
+                }
             }
             set
             {
-                SetValue(CellHorizontalAlignmentProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(CellHorizontalAlignmentProperty, value);
+                }
+                else
+                {
+                    SetInternalCellHorizontalAlignmentProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1183,11 +1772,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (VerticalAlignmentType)GetValue(CellVerticalAlignmentProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (VerticalAlignmentType)GetValue(CellVerticalAlignmentProperty);
+                }
+                else
+                {
+                    return (VerticalAlignmentType)GetInternalCellVerticalAlignmentProperty(this);
+                }
             }
             set
             {
-                SetValue(CellVerticalAlignmentProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(CellVerticalAlignmentProperty, value);
+                }
+                else
+                {
+                    SetInternalCellVerticalAlignmentProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1203,11 +1806,25 @@ namespace Tizen.NUI.BaseComponents
             // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
             get
             {
-                return (View)GetValue(LeftFocusableViewProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (View)GetValue(LeftFocusableViewProperty);
+                }
+                else
+                {
+                    return (View)GetInternalLeftFocusableViewProperty(this);
+                }
             }
             set
             {
-                SetValue(LeftFocusableViewProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(LeftFocusableViewProperty, value);
+                }
+                else
+                {
+                    SetInternalLeftFocusableViewProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1223,11 +1840,25 @@ namespace Tizen.NUI.BaseComponents
             // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
             get
             {
-                return (View)GetValue(RightFocusableViewProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (View)GetValue(RightFocusableViewProperty);
+                }
+                else
+                {
+                    return (View)GetInternalRightFocusableViewProperty(this);
+                }
             }
             set
             {
-                SetValue(RightFocusableViewProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(RightFocusableViewProperty, value);
+                }
+                else
+                {
+                    SetInternalRightFocusableViewProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1243,11 +1874,25 @@ namespace Tizen.NUI.BaseComponents
             // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
             get
             {
-                return (View)GetValue(UpFocusableViewProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (View)GetValue(UpFocusableViewProperty);
+                }
+                else
+                {
+                    return (View)GetInternalUpFocusableViewProperty(this);
+                }
             }
             set
             {
-                SetValue(UpFocusableViewProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(UpFocusableViewProperty, value);
+                }
+                else
+                {
+                    SetInternalUpFocusableViewProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1263,11 +1908,25 @@ namespace Tizen.NUI.BaseComponents
             // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
             get
             {
-                return (View)GetValue(DownFocusableViewProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (View)GetValue(DownFocusableViewProperty);
+                }
+                else
+                {
+                    return (View)GetInternalDownFocusableViewProperty(this);
+                }
             }
             set
             {
-                SetValue(DownFocusableViewProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(DownFocusableViewProperty, value);
+                }
+                else
+                {
+                    SetInternalDownFocusableViewProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1283,11 +1942,25 @@ namespace Tizen.NUI.BaseComponents
             // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
             get
             {
-                return (View)GetValue(ClockwiseFocusableViewProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (View)GetValue(ClockwiseFocusableViewProperty);
+                }
+                else
+                {
+                    return (View)GetInternalClockwiseFocusableViewProperty(this);
+                }
             }
             set
             {
-                SetValue(ClockwiseFocusableViewProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(ClockwiseFocusableViewProperty, value);
+                }
+                else
+                {
+                    SetInternalClockwiseFocusableViewProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1303,11 +1976,25 @@ namespace Tizen.NUI.BaseComponents
             // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
             get
             {
-                return (View)GetValue(CounterClockwiseFocusableViewProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (View)GetValue(CounterClockwiseFocusableViewProperty);
+                }
+                else
+                {
+                    return (View)GetInternalCounterClockwiseFocusableViewProperty(this);
+                }
             }
             set
             {
-                SetValue(CounterClockwiseFocusableViewProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(CounterClockwiseFocusableViewProperty, value);
+                }
+                else
+                {
+                    SetInternalCounterClockwiseFocusableViewProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1318,14 +2005,28 @@ namespace Tizen.NUI.BaseComponents
         /// <since_tizen> 3 </since_tizen>
         public bool Focusable
         {
-            set
+            get
             {
-                SetValue(FocusableProperty, value);
-                NotifyPropertyChanged();
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(FocusableProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalFocusableProperty(this);
+                }
             }
-            get
+            set
             {
-                return (bool)GetValue(FocusableProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(FocusableProperty, value);
+                }
+                else
+                {
+                    SetInternalFocusableProperty(this, null, value);
+                }
+                NotifyPropertyChanged();
             }
         }
 
@@ -1336,14 +2037,28 @@ namespace Tizen.NUI.BaseComponents
         [EditorBrowsable(EditorBrowsableState.Never)]
         public bool FocusableChildren
         {
-            set
+            get
             {
-                SetValue(FocusableChildrenProperty, value);
-                NotifyPropertyChanged();
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(FocusableChildrenProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalFocusableChildrenProperty(this);
+                }
             }
-            get
+            set
             {
-                return (bool)GetValue(FocusableChildrenProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(FocusableChildrenProperty, value);
+                }
+                else
+                {
+                    SetInternalFocusableChildrenProperty(this, null, value);
+                }
+                NotifyPropertyChanged();
             }
         }
 
@@ -1355,14 +2070,29 @@ namespace Tizen.NUI.BaseComponents
         [EditorBrowsable(EditorBrowsableState.Never)]
         public bool FocusableInTouch
         {
-            set
+            get
             {
-                SetValue(FocusableInTouchProperty, value);
-                NotifyPropertyChanged();
+
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(FocusableInTouchProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalFocusableInTouchProperty(this);
+                }
             }
-            get
+            set
             {
-                return (bool)GetValue(FocusableInTouchProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(FocusableInTouchProperty, value);
+                }
+                else
+                {
+                    SetInternalFocusableInTouchProperty(this, null, value);
+                }
+                NotifyPropertyChanged();
             }
         }
 
@@ -1480,11 +2210,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (float)GetValue(OpacityProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (float)GetValue(OpacityProperty);
+                }
+                else
+                {
+                    return (float)GetInternalOpacityProperty(this);
+                }
             }
             set
             {
-                SetValue(OpacityProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(OpacityProperty, value);
+                }
+                else
+                {
+                    SetInternalOpacityProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1579,11 +2323,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(PositionUsesPivotPointProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(PositionUsesPivotPointProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalPositionUsesPivotPointProperty(this);
+                }
             }
             set
             {
-                SetValue(PositionUsesPivotPointProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(PositionUsesPivotPointProperty, value);
+                }
+                else
+                {
+                    SetInternalPositionUsesPivotPointProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1603,11 +2361,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(PositionUsesAnchorPointProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(PositionUsesAnchorPointProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalPositionUsesAnchorPointProperty(this);
+                }
             }
             set
             {
-                SetValue(PositionUsesAnchorPointProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(PositionUsesAnchorPointProperty, value);
+                }
+                else
+                {
+                    SetInternalPositionUsesAnchorPointProperty(this, null, value);
+                }
             }
         }
 
@@ -1662,14 +2434,26 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (int)GetValue(SiblingOrderProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (int)GetValue(SiblingOrderProperty);
+                }
+                else
+                {
+                    return (int)GetInternalSiblingOrderProperty(this);
+                }
             }
             set
             {
-                SetValue(SiblingOrderProperty, value);
-
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(SiblingOrderProperty, value);
+                }
+                else
+                {
+                    SetInternalSiblingOrderProperty(this, null, value);
+                }
                 Layout?.ChangeLayoutSiblingOrder(value);
-
                 NotifyPropertyChanged();
             }
         }
@@ -1786,8 +2570,6 @@ namespace Tizen.NUI.BaseComponents
                 {
                     return (Position)GetInternalPivotPointProperty(this);
                 }
-
-
             }
             set
             {
@@ -1799,7 +2581,6 @@ namespace Tizen.NUI.BaseComponents
                 {
                     SetInternalPivotPointProperty(this, null, value);
                 }
-
                 NotifyPropertyChanged();
             }
         }
@@ -2044,8 +2825,6 @@ namespace Tizen.NUI.BaseComponents
                 {
                     return (float)GetInternalPositionZProperty(this);
                 }
-
-
             }
             set
             {
@@ -2057,7 +2836,6 @@ namespace Tizen.NUI.BaseComponents
                 {
                     SetInternalPositionZProperty(this, null, value);
                 }
-
                 NotifyPropertyChanged();
             }
         }
@@ -2094,11 +2872,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Rotation)GetValue(OrientationProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Rotation)GetValue(OrientationProperty);
+                }
+                else
+                {
+                    return (Rotation)GetInternalOrientationProperty(this);
+                }
             }
             set
             {
-                SetValue(OrientationProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(OrientationProperty, value);
+                }
+                else
+                {
+                    SetInternalOrientationProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2420,11 +3212,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(SensitiveProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(SensitiveProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalSensitiveProperty(this);
+                }
             }
             set
             {
-                SetValue(SensitiveProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(SensitiveProperty, value);
+                }
+                else
+                {
+                    SetInternalSensitiveProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2439,11 +3245,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(IsEnabledProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(IsEnabledProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalIsEnabledProperty(this);
+                }
             }
             set
             {
-                SetValue(IsEnabledProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(IsEnabledProperty, value);
+                }
+                else
+                {
+                    SetInternalIsEnabledProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2456,11 +3276,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(LeaveRequiredProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(LeaveRequiredProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalLeaveRequiredProperty(this);
+                }
             }
             set
             {
-                SetValue(LeaveRequiredProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(LeaveRequiredProperty, value);
+                }
+                else
+                {
+                    SetInternalLeaveRequiredProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2473,11 +3307,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(InheritOrientationProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(InheritOrientationProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalInheritOrientationProperty(this);
+                }
             }
             set
             {
-                SetValue(InheritOrientationProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(InheritOrientationProperty, value);
+                }
+                else
+                {
+                    SetInternalInheritOrientationProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2490,11 +3338,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(InheritScaleProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(InheritScaleProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalInheritScaleProperty(this);
+                }
             }
             set
             {
-                SetValue(InheritScaleProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(InheritScaleProperty, value);
+                }
+                else
+                {
+                    SetInternalInheritScaleProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2512,11 +3374,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (DrawModeType)GetValue(DrawModeProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (DrawModeType)GetValue(DrawModeProperty);
+                }
+                else
+                {
+                    return (DrawModeType)GetInternalDrawModeProperty(this);
+                }
             }
             set
             {
-                SetValue(DrawModeProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(DrawModeProperty, value);
+                }
+                else
+                {
+                    SetInternalDrawModeProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2580,11 +3456,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (ResizePolicyType)GetValue(WidthResizePolicyProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (ResizePolicyType)GetValue(WidthResizePolicyProperty);
+                }
+                else
+                {
+                    return (ResizePolicyType)GetInternalWidthResizePolicyProperty(this);
+                }
             }
             set
             {
-                SetValue(WidthResizePolicyProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(WidthResizePolicyProperty, value);
+                }
+                else
+                {
+                    SetInternalWidthResizePolicyProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2597,11 +3487,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (ResizePolicyType)GetValue(HeightResizePolicyProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (ResizePolicyType)GetValue(HeightResizePolicyProperty);
+                }
+                else
+                {
+                    return (ResizePolicyType)GetInternalHeightResizePolicyProperty(this);
+                }
             }
             set
             {
-                SetValue(HeightResizePolicyProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(HeightResizePolicyProperty, value);
+                }
+                else
+                {
+                    SetInternalHeightResizePolicyProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2615,11 +3519,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (SizeScalePolicyType)GetValue(SizeScalePolicyProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (SizeScalePolicyType)GetValue(SizeScalePolicyProperty);
+                }
+                else
+                {
+                    return (SizeScalePolicyType)GetInternalSizeScalePolicyProperty(this);
+                }
             }
             set
             {
-                SetValue(SizeScalePolicyProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(SizeScalePolicyProperty, value);
+                }
+                else
+                {
+                    SetInternalSizeScalePolicyProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2632,11 +3550,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(WidthForHeightProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(WidthForHeightProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalWidthForHeightProperty(this);
+                }
             }
             set
             {
-                SetValue(WidthForHeightProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(WidthForHeightProperty, value);
+                }
+                else
+                {
+                    SetInternalWidthForHeightProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2649,11 +3581,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(HeightForWidthProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(HeightForWidthProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalHeightForWidthProperty(this);
+                }
             }
             set
             {
-                SetValue(HeightForWidthProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(HeightForWidthProperty, value);
+                }
+                else
+                {
+                    SetInternalHeightForWidthProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2827,11 +3773,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(InheritPositionProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(InheritPositionProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalInheritPositionProperty(this);
+                }
             }
             set
             {
-                SetValue(InheritPositionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(InheritPositionProperty, value);
+                }
+                else
+                {
+                    SetInternalInheritPositionProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -2844,11 +3804,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (ClippingModeType)GetValue(ClippingModeProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (ClippingModeType)GetValue(ClippingModeProperty);
+                }
+                else
+                {
+                    return (ClippingModeType)GetInternalClippingModeProperty(this);
+                }
             }
             set
             {
-                SetValue(ClippingModeProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(ClippingModeProperty, value);
+                }
+                else
+                {
+                    SetInternalClippingModeProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3018,11 +3992,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(InheritLayoutDirectionProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(InheritLayoutDirectionProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalInheritLayoutDirectionProperty(this);
+                }
             }
             set
             {
-                SetValue(InheritLayoutDirectionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(InheritLayoutDirectionProperty, value);
+                }
+                else
+                {
+                    SetInternalInheritLayoutDirectionProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3035,11 +4023,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (ViewLayoutDirectionType)GetValue(LayoutDirectionProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (ViewLayoutDirectionType)GetValue(LayoutDirectionProperty);
+                }
+                else
+                {
+                    return (ViewLayoutDirectionType)GetInternalLayoutDirectionProperty(this);
+                }
             }
             set
             {
-                SetValue(LayoutDirectionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(LayoutDirectionProperty, value);
+                }
+                else
+                {
+                    SetInternalLayoutDirectionProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
                 layout?.RequestLayout();
             }
@@ -3118,11 +4120,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (int)GetValue(WidthSpecificationProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (int)GetValue(WidthSpecificationProperty);
+                }
+                else
+                {
+                    return (int)GetInternalWidthSpecificationProperty(this);
+                }
             }
             set
             {
-                SetValue(WidthSpecificationProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(WidthSpecificationProperty, value);
+                }
+                else
+                {
+                    SetInternalWidthSpecificationProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3171,11 +4187,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (int)GetValue(HeightSpecificationProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (int)GetValue(HeightSpecificationProperty);
+                }
+                else
+                {
+                    return (int)GetInternalHeightSpecificationProperty(this);
+                }
             }
             set
             {
-                SetValue(HeightSpecificationProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(HeightSpecificationProperty, value);
+                }
+                else
+                {
+                    SetInternalHeightSpecificationProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3228,11 +4258,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return GetValue(LayoutTransitionProperty) as LayoutTransition;
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return GetValue(LayoutTransitionProperty) as LayoutTransition;
+                }
+                else
+                {
+                    return GetInternalLayoutTransitionProperty(this) as LayoutTransition;
+                }
             }
             set
             {
-                SetValue(LayoutTransitionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(LayoutTransitionProperty, value);
+                }
+                else
+                {
+                    SetInternalLayoutTransitionProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3275,11 +4319,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return GetValue(PaddingEXProperty) as Extents;
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return GetValue(PaddingEXProperty) as Extents;
+                }
+                else
+                {
+                    return GetInternalPaddingEXProperty(this) as Extents;
+                }
             }
             set
             {
-                SetValue(PaddingEXProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(PaddingEXProperty, value);
+                }
+                else
+                {
+                    SetInternalPaddingEXProperty(this, null, value);
+                }
             }
         }
 
@@ -3492,11 +4550,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return GetValue(LayoutProperty) as LayoutItem;
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return GetValue(LayoutProperty) as LayoutItem;
+                }
+                else
+                {
+                    return GetInternalLayoutProperty(this) as LayoutItem;
+                }
             }
             set
             {
-                SetValue(LayoutProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(LayoutProperty, value);
+                }
+                else
+                {
+                    SetInternalLayoutProperty(this, null, value);
+                }
             }
         }
 
@@ -3629,11 +4701,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(BackgroundImageSynchronosLoadingProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(BackgroundImageSynchronosLoadingProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalBackgroundImageSynchronosLoadingProperty(this);
+                }
             }
             set
             {
-                SetValue(BackgroundImageSynchronosLoadingProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BackgroundImageSynchronosLoadingProperty, value);
+                }
+                else
+                {
+                    SetInternalBackgroundImageSynchronosLoadingProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3661,11 +4747,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(BackgroundImageSynchronousLoadingProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(BackgroundImageSynchronousLoadingProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalBackgroundImageSynchronousLoadingProperty(this);
+                }
             }
             set
             {
-                SetValue(BackgroundImageSynchronousLoadingProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BackgroundImageSynchronousLoadingProperty, value);
+                }
+                else
+                {
+                    SetInternalBackgroundImageSynchronousLoadingProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3697,11 +4797,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Vector4)GetValue(UpdateAreaHintProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Vector4)GetValue(UpdateAreaHintProperty);
+                }
+                else
+                {
+                    return (Vector4)GetInternalUpdateAreaHintProperty(this);
+                }
             }
             set
             {
-                SetValue(UpdateAreaHintProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(UpdateAreaHintProperty, value);
+                }
+                else
+                {
+                    SetInternalUpdateAreaHintProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3717,11 +4831,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(EnableControlStatePropagationProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(EnableControlStatePropagationProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalEnableControlStatePropagationProperty(this);
+                }
             }
             set
             {
-                SetValue(EnableControlStatePropagationProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(EnableControlStatePropagationProperty, value);
+                }
+                else
+                {
+                    SetInternalEnableControlStatePropagationProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3756,11 +4884,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (ControlState)GetValue(PropagatableControlStatesProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (ControlState)GetValue(PropagatableControlStatesProperty);
+                }
+                else
+                {
+                    return (ControlState)GetInternalPropagatableControlStatesProperty(this);
+                }
             }
             set
             {
-                SetValue(PropagatableControlStatesProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(PropagatableControlStatesProperty, value);
+                }
+                else
+                {
+                    SetInternalPropagatableControlStatesProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -3780,11 +4922,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(EnableControlStateProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(EnableControlStateProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalEnableControlStateProperty(this);
+                }
             }
             set
             {
-                SetValue(EnableControlStateProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(EnableControlStateProperty, value);
+                }
+                else
+                {
+                    SetInternalEnableControlStateProperty(this, null, value);
+                }
             }
         }
 
@@ -3797,11 +4953,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(GrabTouchAfterLeaveProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(GrabTouchAfterLeaveProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalGrabTouchAfterLeaveProperty(this);
+                }
             }
             set
             {
-                SetValue(GrabTouchAfterLeaveProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(GrabTouchAfterLeaveProperty, value);
+                }
+                else
+                {
+                    SetInternalGrabTouchAfterLeaveProperty(this, null, value);
+                }
             }
         }
 
@@ -3838,11 +5008,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(AllowOnlyOwnTouchProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(AllowOnlyOwnTouchProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalAllowOnlyOwnTouchProperty(this);
+                }
             }
             set
             {
-                SetValue(AllowOnlyOwnTouchProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AllowOnlyOwnTouchProperty, value);
+                }
+                else
+                {
+                    SetInternalAllowOnlyOwnTouchProperty(this, null, value);
+                }
             }
         }
 
@@ -3869,11 +5053,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (BlendEquationType)GetValue(BlendEquationProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (BlendEquationType)GetValue(BlendEquationProperty);
+                }
+                else
+                {
+                    return (BlendEquationType)GetInternalBlendEquationProperty(this);
+                }
             }
             set
             {
-                SetValue(BlendEquationProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(BlendEquationProperty, value);
+                }
+                else
+                {
+                    SetInternalBlendEquationProperty(this, null, value);
+                }
             }
         }
 
@@ -3897,8 +5095,28 @@ namespace Tizen.NUI.BaseComponents
         /// <since_tizen> 9 </since_tizen>
         public bool ThemeChangeSensitive
         {
-            get => (bool)GetValue(ThemeChangeSensitiveProperty);
-            set => SetValue(ThemeChangeSensitiveProperty, value);
+            get
+            {
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(ThemeChangeSensitiveProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalThemeChangeSensitiveProperty(this);
+                }
+            }
+            set
+            {
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(ThemeChangeSensitiveProperty, value);
+                }
+                else
+                {
+                    SetInternalThemeChangeSensitiveProperty(this, null, value);
+                }
+            }
         }
 
         /// <summary>
@@ -4008,11 +5226,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return GetValue(TransitionOptionsProperty) as TransitionOptions;
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return GetValue(TransitionOptionsProperty) as TransitionOptions;
+                }
+                else
+                {
+                    return GetInternalTransitionOptionsProperty(this) as TransitionOptions;
+                }
             }
             set
             {
-                SetValue(TransitionOptionsProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(TransitionOptionsProperty, value);
+                }
+                else
+                {
+                    SetInternalTransitionOptionsProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
index 73d1bbf..76d4caf 100755 (executable)
@@ -36,11 +36,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (string)GetValue(AccessibilityNameProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (string)GetValue(AccessibilityNameProperty);
+                }
+                else
+                {
+                    return (string)GetInternalAccessibilityNameProperty(this);
+                }
             }
             set
             {
-                SetValue(AccessibilityNameProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AccessibilityNameProperty, value);
+                }
+                else
+                {
+                    SetInternalAccessibilityNameProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -53,11 +67,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (string)GetValue(AccessibilityDescriptionProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (string)GetValue(AccessibilityDescriptionProperty);
+                }
+                else
+                {
+                    return (string)GetInternalAccessibilityDescriptionProperty(this);
+                }
             }
             set
             {
-                SetValue(AccessibilityDescriptionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AccessibilityDescriptionProperty, value);
+                }
+                else
+                {
+                    SetInternalAccessibilityDescriptionProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -70,11 +98,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (string)GetValue(AccessibilityTranslationDomainProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (string)GetValue(AccessibilityTranslationDomainProperty);
+                }
+                else
+                {
+                    return (string)GetInternalAccessibilityTranslationDomainProperty(this);
+                }
             }
             set
             {
-                SetValue(AccessibilityTranslationDomainProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AccessibilityTranslationDomainProperty, value);
+                }
+                else
+                {
+                    SetInternalAccessibilityTranslationDomainProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -87,11 +129,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Role)GetValue(AccessibilityRoleProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Role)GetValue(AccessibilityRoleProperty);
+                }
+                else
+                {
+                    return (Role)GetInternalAccessibilityRoleProperty(this);
+                }
             }
             set
             {
-                SetValue(AccessibilityRoleProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AccessibilityRoleProperty, value);
+                }
+                else
+                {
+                    SetInternalAccessibilityRoleProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -108,11 +164,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(AccessibilityHighlightableProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(AccessibilityHighlightableProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalAccessibilityHighlightableProperty(this);
+                }
             }
             set
             {
-                SetValue(AccessibilityHighlightableProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AccessibilityHighlightableProperty, value);
+                }
+                else
+                {
+                    SetInternalAccessibilityHighlightableProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -128,11 +198,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(AccessibilityHiddenProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(AccessibilityHiddenProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalAccessibilityHiddenProperty(this);
+                }
             }
             set
             {
-                SetValue(AccessibilityHiddenProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AccessibilityHiddenProperty, value);
+                }
+                else
+                {
+                    SetInternalAccessibilityHiddenProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -145,11 +229,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return GetValue(AutomationIdProperty) as string;
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return GetValue(AutomationIdProperty) as string;
+                }
+                else
+                {
+                    return GetInternalAutomationIdProperty(this) as string;
+                }
             }
             set
             {
-                SetValue(AutomationIdProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(AutomationIdProperty, value);
+                }
+                else
+                {
+                    SetInternalAutomationIdProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
index 41aa0a4..58b7792 100755 (executable)
@@ -34,7 +34,12 @@ namespace Tizen.NUI.BaseComponents
         /// StyleNameProperty (DALi json)
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty StyleNameProperty = BindableProperty.Create(nameof(StyleName), typeof(string), typeof(View), string.Empty, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty StyleNameProperty = null;
+#else
+        public static readonly BindableProperty StyleNameProperty = null;
+#endif
+        internal static void SetInternalStyleNameProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -54,35 +59,48 @@ namespace Tizen.NUI.BaseComponents
                 view.ApplyStyle(style);
                 view.SetThemeApplied();
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalStyleNameProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             if (!string.IsNullOrEmpty(view.styleName)) return view.styleName;
 
             return Object.InternalGetPropertyString(view.SwigCPtr, View.Property.StyleName);
-        }));
+        }
 
         /// <summary>
         /// KeyInputFocusProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty KeyInputFocusProperty = BindableProperty.Create(nameof(KeyInputFocus), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty KeyInputFocusProperty = null;
+#else
+        public static readonly BindableProperty KeyInputFocusProperty = null;
+#endif
+        internal static void SetInternalKeyInputFocusProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.KeyInputFocus, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalKeyInputFocusProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.KeyInputFocus);
-        }));
+        }
 
-        // BackgroundColorProperty
+        /// <summary>
+        /// BackgroundColorProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BackgroundColorProperty = null;
+#else
+        public static readonly BindableProperty BackgroundColorProperty = null;
+#endif
         internal static void SetInternalBackgroundColorProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -107,7 +125,6 @@ namespace Tizen.NUI.BaseComponents
                 view.SetBackgroundColor((Color)newValue);
             }
         }
-
         internal static object GetInternalBackgroundColorProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -127,26 +144,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// BackgroundColorProperty
+        /// ColorProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        public static BindableProperty BackgroundColorProperty = null;
-
-        internal static BindableProperty GetBackgroundColorProperty()
-        {
-            if (BackgroundColorProperty == null)
-            {
-                BackgroundColorProperty = BindableProperty.Create(nameof(BackgroundColor), typeof(Color), typeof(View), null,
-                    propertyChanged: SetInternalBackgroundColorProperty, defaultValueCreator: GetInternalBackgroundColorProperty);
-            }
-            return BackgroundColorProperty;
-        }
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ColorProperty = null;
 #else
-        public static readonly BindableProperty BackgroundColorProperty = null;
+        public static readonly BindableProperty ColorProperty = null;
 #endif
-
-        // ColorProperty
         internal static void SetInternalColorProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -163,7 +168,6 @@ namespace Tizen.NUI.BaseComponents
                 view.SetColor((Color)newValue);
             }
         }
-
         internal static object GetInternalColorProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -177,32 +181,19 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ColorProperty
+        /// ColorRedProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        public static BindableProperty ColorProperty = null;
-
-        internal static BindableProperty GetColorProperty()
-        {
-            if (ColorProperty == null)
-            {
-                ColorProperty = BindableProperty.Create(nameof(Color), typeof(Color), typeof(View), null,
-                    propertyChanged: SetInternalColorProperty, defaultValueCreator: GetInternalColorProperty);
-            }
-            return ColorProperty;
-        }
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ColorRedProperty = null;
 #else
-        public static readonly BindableProperty ColorProperty = null;
+        public static readonly BindableProperty ColorRedProperty = null;
 #endif
-
-        // ColorRedProperty
         internal static void SetInternalColorRedProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             view.SetColorRed((float?)newValue);
         }
-
         internal static object GetInternalColorRedProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -210,33 +201,20 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ColorRedProperty
+        /// ColorGreenProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        public static BindableProperty ColorRedProperty = null;
-
-        internal static BindableProperty GetColorRedProperty()
-        {
-            if (ColorRedProperty == null)
-            {
-                ColorRedProperty = BindableProperty.Create(nameof(ColorRed), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalColorRedProperty, defaultValueCreator: GetInternalColorRedProperty);
-            }
-            return ColorRedProperty;
-        }
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ColorGreenProperty = null;
 #else
-        public static readonly BindableProperty ColorRedProperty = null;
+        public static readonly BindableProperty ColorGreenProperty = null;
 #endif
-
-        // ColorGreenProperty
         internal static void SetInternalColorGreenProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             view.SetColorGreen((float?)newValue);
 
         }
-
         internal static object GetInternalColorGreenProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -245,33 +223,20 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ColorGreenProperty
+        /// ColorBlueProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        public static BindableProperty ColorGreenProperty = null;
-
-        internal static BindableProperty GetColorGreenProperty()
-        {
-            if (ColorGreenProperty == null)
-            {
-                ColorGreenProperty = BindableProperty.Create(nameof(ColorGreen), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalColorGreenProperty, defaultValueCreator: GetInternalColorGreenProperty);
-            }
-            return ColorGreenProperty;
-        }
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ColorBlueProperty = null;
 #else
-        public static readonly BindableProperty ColorGreenProperty = null;
+        public static readonly BindableProperty ColorBlueProperty = null;
 #endif
-
-        // ColorBlueProperty
         internal static void SetInternalColorBlueProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             view.SetColorBlue((float?)newValue);
 
         }
-
         internal static object GetInternalColorBlueProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -279,70 +244,62 @@ namespace Tizen.NUI.BaseComponents
 
         }
 
-        /// <summary>
-        /// ColorBlueProperty
+        /// <summary> 
+        /// BackgroundImageProperty 
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        public static BindableProperty ColorBlueProperty = null;
-
-        internal static BindableProperty GetColorBlueProperty()
-        {
-            if (ColorBlueProperty == null)
-            {
-                ColorBlueProperty = BindableProperty.Create(nameof(ColorBlue), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalColorBlueProperty, defaultValueCreator: GetInternalColorBlueProperty);
-            }
-            return ColorBlueProperty;
-        }
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BackgroundImageProperty = null;
 #else
-        public static readonly BindableProperty ColorBlueProperty = null;
+        public static readonly BindableProperty BackgroundImageProperty = null;
 #endif
-
-        /// <summary> BackgroundImageProperty </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BackgroundImageProperty = BindableProperty.Create(nameof(BackgroundImage), typeof(string), typeof(View), default(string),
-            propertyChanged: (bindable, oldValue, newValue) =>
+        internal static void SetInternalBackgroundImageProperty(BindableObject bindable, object oldValue, object newValue)
+        {
+            if (String.Equals(oldValue, newValue))
             {
-                if (String.Equals(oldValue, newValue))
-                {
-                    NUILog.Debug($"oldValue={oldValue} newValue={newValue} are same. just return here");
-                    return;
-                }
+                NUILog.Debug($"oldValue={oldValue} newValue={newValue} are same. just return here");
+                return;
+            }
 
-                var view = (View)bindable;
+            var view = (View)bindable;
 
-                if (view.themeData?.selectorData != null)
-                {
-                    view.themeData.selectorData.BackgroundColor?.Reset(view);
-                    view.themeData.selectorData.BackgroundImage?.Reset(view);
-                }
+            if (view.themeData?.selectorData != null)
+            {
+                view.themeData.selectorData.BackgroundColor?.Reset(view);
+                view.themeData.selectorData.BackgroundImage?.Reset(view);
+            }
 
-                if (newValue is Selector<string> selector)
-                {
-                    if (selector.HasAll()) view.SetBackgroundImage(selector.All);
-                    else view.EnsureSelectorData().BackgroundImage = new TriggerableSelector<string>(view, selector, view.SetBackgroundImage, true);
-                }
-                else
-                {
-                    view.SetBackgroundImage((string)newValue);
-                }
-            },
-            defaultValueCreator: (bindable) =>
+            if (newValue is Selector<string> selector)
             {
-                var view = (View)bindable;
-                string backgroundImage = "";
+                if (selector.HasAll()) view.SetBackgroundImage(selector.All);
+                else view.EnsureSelectorData().BackgroundImage = new TriggerableSelector<string>(view, selector, view.SetBackgroundImage, true);
+            }
+            else
+            {
+                view.SetBackgroundImage((string)newValue);
+            }
+        }
+        internal static object GetInternalBackgroundImageProperty(BindableObject bindable)
+        {
+            var view = (View)bindable;
+            string backgroundImage = "";
 
-                Interop.View.InternalRetrievingVisualPropertyString(view.SwigCPtr, Property.BACKGROUND, ImageVisualProperty.URL, out backgroundImage);
+            Interop.View.InternalRetrievingVisualPropertyString(view.SwigCPtr, Property.BACKGROUND, ImageVisualProperty.URL, out backgroundImage);
 
-                return backgroundImage;
-            }
-        );
+            return backgroundImage;
+        }
 
 
-        /// <summary>BackgroundImageBorderProperty</summary>
+        /// <summary>
+        /// BackgroundImageBorderProperty
+        /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BackgroundImageBorderProperty = BindableProperty.Create(nameof(BackgroundImageBorder), typeof(Rectangle), typeof(View), default(Rectangle), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BackgroundImageBorderProperty = null;
+#else
+        public static readonly BindableProperty BackgroundImageBorderProperty = null;
+#endif
+        internal static void SetInternalBackgroundImageBorderProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
 
@@ -357,70 +314,78 @@ namespace Tizen.NUI.BaseComponents
             {
                 view.SetBackgroundImageBorder((Rectangle)newValue);
             }
-        }),
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalBackgroundImageBorderProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return view.backgroundExtraData?.BackgroundImageBorder;
-        });
+        }
 
         /// <summary>
         /// BackgroundProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BackgroundProperty = BindableProperty.Create(nameof(Background), typeof(PropertyMap), typeof(View), null,
-            propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BackgroundProperty = null;
+#else
+        public static readonly BindableProperty BackgroundProperty = null;
+#endif
+        internal static void SetInternalBackgroundProperty(BindableObject bindable, object oldValue, object newValue)
+        {
+            var view = (View)bindable;
+            if (newValue != null)
             {
-                var view = (View)bindable;
-                if (newValue != null)
-                {
-                    var propertyValue = new PropertyValue((PropertyMap)newValue);
-                    Object.SetProperty(view.SwigCPtr, Property.BACKGROUND, propertyValue);
-
-                    view.backgroundExtraData = null;
+                var propertyValue = new PropertyValue((PropertyMap)newValue);
+                Object.SetProperty(view.SwigCPtr, Property.BACKGROUND, propertyValue);
 
-                    // Background extra data is not valid anymore. We should ignore lazy UpdateBackgroundExtraData
-                    view.backgroundExtraDataUpdatedFlag = BackgroundExtraDataUpdatedFlag.None;
-                    if (view.backgroundExtraDataUpdateProcessAttachedFlag)
-                    {
-                        ProcessorController.Instance.ProcessorOnceEvent -= view.UpdateBackgroundExtraData;
-                        view.backgroundExtraDataUpdateProcessAttachedFlag = false;
-                    }
+                view.backgroundExtraData = null;
 
-                    propertyValue.Dispose();
-                    propertyValue = null;
+                // Background extra data is not valid anymore. We should ignore lazy UpdateBackgroundExtraData
+                view.backgroundExtraDataUpdatedFlag = BackgroundExtraDataUpdatedFlag.None;
+                if (view.backgroundExtraDataUpdateProcessAttachedFlag)
+                {
+                    ProcessorController.Instance.ProcessorOnceEvent -= view.UpdateBackgroundExtraData;
+                    view.backgroundExtraDataUpdateProcessAttachedFlag = false;
                 }
-            },
-            defaultValueCreator: (bindable) =>
-            {
-                var view = (View)bindable;
 
-                // Sync as current properties
-                view.UpdateBackgroundExtraData();
-
-                PropertyMap tmp = new PropertyMap();
-                var propertyValue = Object.GetProperty(view.SwigCPtr, Property.BACKGROUND);
-                propertyValue.Get(tmp);
                 propertyValue.Dispose();
                 propertyValue = null;
-                return tmp;
             }
-        );
+        }
+        internal static object GetInternalBackgroundProperty(BindableObject bindable)
+        {
+            var view = (View)bindable;
+
+            // Sync as current properties
+            view.UpdateBackgroundExtraData();
+
+            PropertyMap tmp = new PropertyMap();
+            var propertyValue = Object.GetProperty(view.SwigCPtr, Property.BACKGROUND);
+            propertyValue.Get(tmp);
+            propertyValue.Dispose();
+            propertyValue = null;
+            return tmp;
+        }
 
         /// <summary>
         /// StateProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty StateProperty = BindableProperty.Create(nameof(State), typeof(States), typeof(View), States.Normal, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty StateProperty = null;
+#else
+        public static readonly BindableProperty StateProperty = null;
+#endif
+        internal static void SetInternalStateProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyInt(view.SwigCPtr, View.Property.STATE, (int)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalStateProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             int temp = 0;
@@ -432,13 +397,18 @@ namespace Tizen.NUI.BaseComponents
                 case 2: return States.Disabled;
                 default: return States.Normal;
             }
-        }));
+        }
 
         /// <summary>
         /// SubStateProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty SubStateProperty = BindableProperty.Create(nameof(SubState), typeof(States), typeof(View), States.Normal, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SubStateProperty = null;
+#else
+        public static readonly BindableProperty SubStateProperty = null;
+#endif
+        internal static void SetInternalSubStateProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             string valueToString = "";
@@ -447,92 +417,120 @@ namespace Tizen.NUI.BaseComponents
                 valueToString = ((States)newValue).GetDescription();
                 Object.InternalSetPropertyString(view.SwigCPtr, View.Property.SubState, valueToString);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalSubStateProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             string temp;
             temp = Object.InternalGetPropertyString(view.SwigCPtr, View.Property.SubState);
             return temp.GetValueByDescription<States>();
-        }));
+        }
 
         /// <summary>
         /// TooltipProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty TooltipProperty = BindableProperty.Create(nameof(Tooltip), typeof(PropertyMap), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty TooltipProperty = null;
+#else
+        public static readonly BindableProperty TooltipProperty = null;
+#endif
+        internal static void SetInternalTooltipProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalTooltipProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.TOOLTIP).Get(temp);
             return temp;
-        }));
+        }
 
         /// <summary>
         /// FlexProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty FlexProperty = BindableProperty.Create(nameof(Flex), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty FlexProperty = null;
+#else
+        public static readonly BindableProperty FlexProperty = null;
+#endif
+        internal static void SetInternalFlexProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyFloat(view.SwigCPtr, FlexContainer.ChildProperty.FLEX, (float)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalFlexProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyFloat(view.SwigCPtr, FlexContainer.ChildProperty.FLEX);
-        }));
+        }
 
         /// <summary>
         /// AlignSelfProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AlignSelfProperty = BindableProperty.Create(nameof(AlignSelf), typeof(int), typeof(View), default(int), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AlignSelfProperty = null;
+#else
+        public static readonly BindableProperty AlignSelfProperty = null;
+#endif
+        internal static void SetInternalAlignSelfProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyInt(view.SwigCPtr, FlexContainer.ChildProperty.AlignSelf, (int)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalAlignSelfProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyInt(view.SwigCPtr, FlexContainer.ChildProperty.AlignSelf);
-        }));
+        }
 
         /// <summary>
         /// FlexMarginProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty FlexMarginProperty = BindableProperty.Create(nameof(FlexMargin), typeof(Vector4), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty FlexMarginProperty = null;
+#else
+        public static readonly BindableProperty FlexMarginProperty = null;
+#endif
+        internal static void SetInternalFlexMarginProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyVector4(view.SwigCPtr, FlexContainer.ChildProperty.FlexMargin, ((Vector4)newValue).SwigCPtr);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalFlexMarginProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
             Object.InternalRetrievingPropertyVector4(view.SwigCPtr, FlexContainer.ChildProperty.FlexMargin, temp.SwigCPtr);
             return temp;
-        }));
+        }
 
-        // CellIndexProperty
+        /// <summary>
+        /// CellIndexProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty CellIndexProperty = null;
+#else
+        public static readonly BindableProperty CellIndexProperty = null;
+#endif
         internal static void SetInternalCellIndexProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -542,7 +540,6 @@ namespace Tizen.NUI.BaseComponents
             }
 
         }
-
         internal static object GetInternalCellIndexProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -556,66 +553,61 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// CellIndexProperty
+        /// RowSpanProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetCellIndexProperty()
-        {
-            if (CellIndexProperty == null)
-            {
-                CellIndexProperty = BindableProperty.Create(nameof(CellIndex), typeof(Vector2), typeof(View), null,
-                    propertyChanged: SetInternalCellIndexProperty, defaultValueCreator: GetInternalCellIndexProperty);
-            }
-            return CellIndexProperty;
-        }
-
-        public static BindableProperty CellIndexProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty RowSpanProperty = null;
 #else
-        public static readonly BindableProperty CellIndexProperty = null;
+        public static readonly BindableProperty RowSpanProperty = null;
 #endif
-
-        /// <summary>
-        /// RowSpanProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty RowSpanProperty = BindableProperty.Create(nameof(RowSpan), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalRowSpanProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyFloat(view.SwigCPtr, TableView.ChildProperty.RowSpan, (float)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalRowSpanProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyFloat(view.SwigCPtr, TableView.ChildProperty.RowSpan);
-        }));
+        }
 
         /// <summary>
         /// ColumnSpanProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty ColumnSpanProperty = BindableProperty.Create(nameof(ColumnSpan), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ColumnSpanProperty = null;
+#else
+        public static readonly BindableProperty ColumnSpanProperty = null;
+#endif
+        internal static void SetInternalColumnSpanProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyFloat(view.SwigCPtr, TableView.ChildProperty.ColumnSpan, (float)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalColumnSpanProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyFloat(view.SwigCPtr, TableView.ChildProperty.ColumnSpan);
-        }));
+        }
 
         /// <summary>
         /// CellHorizontalAlignmentProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty CellHorizontalAlignmentProperty = BindableProperty.Create(nameof(CellHorizontalAlignment), typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty CellHorizontalAlignmentProperty = null;
+#else
+        public static readonly BindableProperty CellHorizontalAlignmentProperty = null;
+#endif
+        internal static void SetInternalCellHorizontalAlignmentProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             string valueToString = "";
@@ -625,20 +617,25 @@ namespace Tizen.NUI.BaseComponents
                 valueToString = ((HorizontalAlignmentType)newValue).GetDescription();
                 Object.InternalSetPropertyString(view.SwigCPtr, TableView.ChildProperty.CellHorizontalAlignment, valueToString);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalCellHorizontalAlignmentProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             string temp;
             temp = Object.InternalGetPropertyString(view.SwigCPtr, TableView.ChildProperty.CellHorizontalAlignment);
             return temp.GetValueByDescription<HorizontalAlignmentType>();
-        }));
+        }
 
         /// <summary>
         /// CellVerticalAlignmentProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty CellVerticalAlignmentProperty = BindableProperty.Create(nameof(CellVerticalAlignment), typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty CellVerticalAlignmentProperty = null;
+#else
+        public static readonly BindableProperty CellVerticalAlignmentProperty = null;
+#endif
+        internal static void SetInternalCellVerticalAlignmentProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             string valueToString = "";
@@ -648,183 +645,240 @@ namespace Tizen.NUI.BaseComponents
                 valueToString = ((VerticalAlignmentType)newValue).GetDescription();
                 Object.InternalSetPropertyString(view.SwigCPtr, TableView.ChildProperty.CellVerticalAlignment, valueToString);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalCellVerticalAlignmentProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             string temp;
             temp = Object.InternalGetPropertyString(view.SwigCPtr, TableView.ChildProperty.CellVerticalAlignment);
             return temp.GetValueByDescription<VerticalAlignmentType>();
-        }));
+        }
 
         /// <summary>
         /// "DO not use this, that will be deprecated. Use 'View Weight' instead of BindableProperty"
         /// This needs to be hidden as inhouse API until all applications using it have been updated.  Do not make public.
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty WeightProperty = BindableProperty.Create(nameof(Weight), typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty WeightProperty = null;
+#else
+        public static readonly BindableProperty WeightProperty = null;
+#endif
+        internal static void SetInternalWeightProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 view.Weight = (float)newValue;
             }
-        },
-
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalWeightProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.Weight;
-        });
+        }
 
         /// <summary>
         /// LeftFocusableViewProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty LeftFocusableViewProperty = null;
+#else
+        public static readonly BindableProperty LeftFocusableViewProperty = null;
+#endif
+        internal static void SetInternalLeftFocusableViewProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.LeftFocusableViewId = (int)(newValue as View)?.GetId(); }
             else { view.LeftFocusableViewId = -1; }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalLeftFocusableViewProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             if (view.LeftFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.LeftFocusableViewId); }
             return null;
-        });
+        }
 
         /// <summary>
         /// RightFocusableViewProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty RightFocusableViewProperty = null;
+#else
+        public static readonly BindableProperty RightFocusableViewProperty = null;
+#endif
+        internal static void SetInternalRightFocusableViewProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.RightFocusableViewId = (int)(newValue as View)?.GetId(); }
             else { view.RightFocusableViewId = -1; }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalRightFocusableViewProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             if (view.RightFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.RightFocusableViewId); }
             return null;
-        });
+        }
 
         /// <summary>
         /// UpFocusableViewProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty UpFocusableViewProperty = null;
+#else
+        public static readonly BindableProperty UpFocusableViewProperty = null;
+#endif
+        internal static void SetInternalUpFocusableViewProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.UpFocusableViewId = (int)(newValue as View)?.GetId(); }
             else { view.UpFocusableViewId = -1; }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalUpFocusableViewProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             if (view.UpFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.UpFocusableViewId); }
             return null;
-        });
+        }
 
         /// <summary>
         /// DownFocusableViewProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty DownFocusableViewProperty = null;
+#else
+        public static readonly BindableProperty DownFocusableViewProperty = null;
+#endif
+        internal static void SetInternalDownFocusableViewProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.DownFocusableViewId = (int)(newValue as View)?.GetId(); }
             else { view.DownFocusableViewId = -1; }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalDownFocusableViewProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             if (view.DownFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.DownFocusableViewId); }
             return null;
-        });
+        }
 
         /// <summary>
         /// ClockwiseFocusableViewProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty ClockwiseFocusableViewProperty = BindableProperty.Create(nameof(View.ClockwiseFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ClockwiseFocusableViewProperty = null;
+#else
+        public static readonly BindableProperty ClockwiseFocusableViewProperty = null;
+#endif
+        internal static void SetInternalClockwiseFocusableViewProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null && (newValue is View)) { view.ClockwiseFocusableViewId = (int)(newValue as View)?.GetId(); }
             else { view.ClockwiseFocusableViewId = -1; }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalClockwiseFocusableViewProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             if (view.ClockwiseFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.ClockwiseFocusableViewId); }
             return null;
-        });
+        }
 
         /// <summary>
         /// CounterClockwiseFocusableViewProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty CounterClockwiseFocusableViewProperty = BindableProperty.Create(nameof(View.CounterClockwiseFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty CounterClockwiseFocusableViewProperty = null;
+#else
+        public static readonly BindableProperty CounterClockwiseFocusableViewProperty = null;
+#endif
+        internal static void SetInternalCounterClockwiseFocusableViewProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null && (newValue is View)) { view.CounterClockwiseFocusableViewId = (int)(newValue as View)?.GetId(); }
             else { view.CounterClockwiseFocusableViewId = -1; }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalCounterClockwiseFocusableViewProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             if (view.CounterClockwiseFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.CounterClockwiseFocusableViewId); }
             return null;
-        });
+        }
 
         /// <summary>
         /// FocusableProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty FocusableProperty = BindableProperty.Create(nameof(Focusable), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty FocusableProperty = null;
+#else
+        public static readonly BindableProperty FocusableProperty = null;
+#endif
+        internal static void SetInternalFocusableProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.SetKeyboardFocusable((bool)newValue); }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalFocusableProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.IsKeyboardFocusable();
-        });
+        }
 
         /// <summary>
         /// FocusableChildrenProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty FocusableChildrenProperty = BindableProperty.Create(nameof(FocusableChildren), typeof(bool), typeof(View), true, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty FocusableChildrenProperty = null;
+#else
+        public static readonly BindableProperty FocusableChildrenProperty = null;
+#endif
+        internal static void SetInternalFocusableChildrenProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.SetKeyboardFocusableChildren((bool)newValue); }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalFocusableChildrenProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.AreChildrenKeyBoardFocusable();
-        });
+        }
 
         /// <summary>
         /// FocusableInTouchProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty FocusableInTouchProperty = BindableProperty.Create(nameof(FocusableInTouch), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty FocusableInTouchProperty = null;
+#else
+        public static readonly BindableProperty FocusableInTouchProperty = null;
+#endif
+        internal static void SetInternalFocusableInTouchProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null) { view.SetFocusableInTouch((bool)newValue); }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalFocusableInTouchProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.IsFocusableInTouch();
-        });
+        }
 
-        //Size2DProperty
+        /// <summary>
+        /// Size2DProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty Size2DProperty = null;
+#else
+        public static readonly BindableProperty Size2DProperty = null;
+#endif
         internal static void SetInternalSize2DProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -859,7 +913,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyVector2ActualVector3(view.SwigCPtr, View.Property.SIZE, ((Size2D)newValue).SwigCPtr);
             }
         }
-
         internal static object GetInternalSize2DProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -873,30 +926,15 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// Size2DProperty
+        /// OpacityProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetSize2DProperty()
-        {
-            if (Size2DProperty == null)
-            {
-                Size2DProperty = BindableProperty.Create(nameof(Size2D), typeof(Size2D), typeof(View), null,
-                    propertyChanged: SetInternalSize2DProperty, defaultValueCreator: GetInternalSize2DProperty);
-            }
-            return Size2DProperty;
-        }
-
-        public static BindableProperty Size2DProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty OpacityProperty = null;
 #else
-        public static readonly BindableProperty Size2DProperty = null;
+        public static readonly BindableProperty OpacityProperty = null;
 #endif
-
-        /// <summary>
-        /// OpacityProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty OpacityProperty = BindableProperty.Create(nameof(Opacity), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalOpacityProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
 
@@ -911,14 +949,22 @@ namespace Tizen.NUI.BaseComponents
             {
                 view.SetOpacity((float?)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalOpacityProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyFloat(view.SwigCPtr, View.Property.OPACITY);
-        }));
+        }
 
-        // Position2DProperty
+        /// <summary>
+        /// Position2DProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty Position2DProperty = null;
+#else
+        public static readonly BindableProperty Position2DProperty = null;
+#endif
         internal static void SetInternalPosition2DProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -927,7 +973,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyVector2ActualVector3(view.SwigCPtr, View.Property.POSITION, ((Position2D)newValue).SwigCPtr);
             }
         }
-
         internal static object GetInternalPosition2DProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -940,48 +985,38 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// Position2DProperty
+        /// PositionUsesPivotPointProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPosition2DProperty()
-        {
-            if (Position2DProperty == null)
-            {
-                Position2DProperty = BindableProperty.Create(nameof(Position2D), typeof(Position2D), typeof(View), null,
-                    propertyChanged: SetInternalPosition2DProperty, defaultValueCreator: GetInternalPosition2DProperty);
-            }
-            return Position2DProperty;
-        }
-
-        public static BindableProperty Position2DProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PositionUsesPivotPointProperty = null;
 #else
-        public static readonly BindableProperty Position2DProperty = null;
+        public static readonly BindableProperty PositionUsesPivotPointProperty = null;
 #endif
-
-        /// <summary>
-        /// PositionUsesPivotPointProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty PositionUsesPivotPointProperty = BindableProperty.Create(nameof(PositionUsesPivotPoint), typeof(bool), typeof(View), true, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalPositionUsesPivotPointProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.PositionUsesAnchorPoint, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalPositionUsesPivotPointProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.PositionUsesAnchorPoint);
-        }));
+        }
 
         /// <summary>
         /// SiblingOrderProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty SiblingOrderProperty = BindableProperty.Create(nameof(SiblingOrder), typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SiblingOrderProperty = null;
+#else
+        public static readonly BindableProperty SiblingOrderProperty = null;
+#endif
+        internal static void SetInternalSiblingOrderProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             int value;
@@ -1009,8 +1044,8 @@ namespace Tizen.NUI.BaseComponents
                     }
                 }
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalSiblingOrderProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             var parentChildren = view.GetParent()?.Children;
@@ -1024,9 +1059,17 @@ namespace Tizen.NUI.BaseComponents
             }
 
             return 0;
-        });
+        }
 
-        // ParentOriginProperty
+        /// <summary>
+        /// ParentOriginProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ParentOriginProperty = null;
+#else
+        public static readonly BindableProperty ParentOriginProperty = null;
+#endif
         internal static void SetInternalParentOriginProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1035,7 +1078,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyVector3(view.SwigCPtr, View.Property.ParentOrigin, ((Position)newValue).SwigCPtr);
             }
         }
-
         internal static object GetInternalParentOriginProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1044,27 +1086,16 @@ namespace Tizen.NUI.BaseComponents
             return temp;
         }
 
+
         /// <summary>
-        /// ParentOriginProperty
+        /// PivotPointProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetParentOriginProperty()
-        {
-            if (ParentOriginProperty == null)
-            {
-                ParentOriginProperty = BindableProperty.Create(nameof(ParentOrigin), typeof(Position), typeof(View), null,
-                    propertyChanged: SetInternalParentOriginProperty, defaultValueCreator: GetInternalParentOriginProperty);
-            }
-            return ParentOriginProperty;
-        }
-
-        public static BindableProperty ParentOriginProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PivotPointProperty = null;
 #else
-        public static readonly BindableProperty ParentOriginProperty = null;
+        public static readonly BindableProperty PivotPointProperty = null;
 #endif
-
-        // PivotPointProperty
         internal static void SetInternalPivotPointProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1073,7 +1104,6 @@ namespace Tizen.NUI.BaseComponents
                 view.SetAnchorPoint((Position)newValue);
             }
         }
-
         internal static object GetInternalPivotPointProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1086,26 +1116,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// PivotPointProperty
+        /// SizeWidthProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPivotPointProperty()
-        {
-            if (PivotPointProperty == null)
-            {
-                PivotPointProperty = BindableProperty.Create(nameof(PivotPoint), typeof(Position), typeof(View), null,
-                    propertyChanged: SetInternalPivotPointProperty, defaultValueCreator: GetInternalPivotPointProperty);
-            }
-            return PivotPointProperty;
-        }
-
-        public static BindableProperty PivotPointProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SizeWidthProperty = null;
 #else
-        public static readonly BindableProperty PivotPointProperty = null;
+        public static readonly BindableProperty SizeWidthProperty = null;
 #endif
-        
-        // SizeWidthProperty
         internal static void SetInternalSizeWidthProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1129,7 +1147,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.SizeWidth, width);
             }
         }
-
         internal static object GetInternalSizeWidthProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1137,26 +1154,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// SizeWidthProperty
+        /// SizeHeightProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetSizeWidthProperty()
-        {
-            if (SizeWidthProperty == null)
-            {
-                SizeWidthProperty = BindableProperty.Create(nameof(SizeWidth), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalSizeWidthProperty, defaultValueCreator: GetInternalSizeWidthProperty);
-            }
-            return SizeWidthProperty;
-        }
-
-        public static BindableProperty SizeWidthProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SizeHeightProperty = null;
 #else
-        public static readonly BindableProperty SizeWidthProperty = null;
-#endif        
-
-        // SizeHeightProperty
+        public static readonly BindableProperty SizeHeightProperty = null;
+#endif
         internal static void SetInternalSizeHeightProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1180,7 +1185,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.SizeHeight, height);
             }
         }
-
         internal static object GetInternalSizeHeightProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1188,26 +1192,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// SizeHeightProperty
+        /// PositionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetSizeHeightProperty()
-        {
-            if (SizeHeightProperty == null)
-            {
-                SizeHeightProperty = BindableProperty.Create(nameof(SizeHeight), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalSizeHeightProperty, defaultValueCreator: GetInternalSizeHeightProperty);
-            }
-            return SizeHeightProperty;
-        }
-
-        public static BindableProperty SizeHeightProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PositionProperty = null;
 #else
-        public static readonly BindableProperty SizeHeightProperty = null;
+        public static readonly BindableProperty PositionProperty = null;
 #endif
-
-        // PositionProperty
         internal static void SetInternalPositionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1216,7 +1208,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyVector3(view.SwigCPtr, View.Property.POSITION, ((Position)newValue).SwigCPtr);
             }
         }
-
         internal static object GetInternalPositionProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1229,26 +1220,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// PositionProperty
+        /// PositionXProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPositionProperty()
-        {
-            if (PositionProperty == null)
-            {
-                PositionProperty = BindableProperty.Create(nameof(Position), typeof(Position), typeof(View), null,
-                    propertyChanged: SetInternalPositionProperty, defaultValueCreator: GetInternalPositionProperty);
-            }
-            return PositionProperty;
-        }
-
-        public static BindableProperty PositionProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PositionXProperty = null;
 #else
-        public static readonly BindableProperty PositionProperty = null;
+        public static readonly BindableProperty PositionXProperty = null;
 #endif
-        
-        // PositionXProperty
         internal static void SetInternalPositionXProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1257,7 +1236,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.PositionX, (float)newValue);
             }
         }
-
         internal static object GetInternalPositionXProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1265,26 +1243,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// PositionXProperty
+        /// PositionYProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPositionXProperty()
-        {
-            if (PositionXProperty == null)
-            {
-                PositionXProperty = BindableProperty.Create(nameof(PositionX), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalPositionXProperty, defaultValueCreator: GetInternalPositionXProperty);
-            }
-            return PositionXProperty;
-        }
-
-        public static BindableProperty PositionXProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PositionYProperty = null;
 #else
-        public static readonly BindableProperty PositionXProperty = null;
+        public static readonly BindableProperty PositionYProperty = null;
 #endif
-
-        // PositionYProperty
         internal static void SetInternalPositionYProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1293,7 +1259,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.PositionY, (float)newValue);
             }
         }
-
         internal static object GetInternalPositionYProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1301,23 +1266,13 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// PositionYProperty
+        /// PositionZProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPositionYProperty()
-        {
-            if (PositionYProperty == null)
-            {
-                PositionYProperty = BindableProperty.Create(nameof(PositionY), typeof(float), typeof(View), default(float),
-                propertyChanged: SetInternalPositionYProperty, defaultValueCreator: GetInternalPositionYProperty);
-            }
-            return PositionYProperty;
-        }
-
-        public static BindableProperty PositionYProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PositionZProperty = null;
 #else
-        public static readonly BindableProperty PositionYProperty = null;
+        public static readonly BindableProperty PositionZProperty = null;
 #endif
         internal static void SetInternalPositionZProperty(BindableObject bindable, object oldValue, object newValue)
         {
@@ -1328,8 +1283,6 @@ namespace Tizen.NUI.BaseComponents
             }
 
         }
-
-        // PositionZProperty
         internal static object GetInternalPositionZProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1337,44 +1290,39 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// PositionZProperty
+        /// OrientationProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPositionZProperty()
-        {
-            if (PositionZProperty == null)
-            {
-                PositionZProperty = BindableProperty.Create(nameof(PositionZ), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalPositionZProperty, defaultValueCreator: GetInternalPositionZProperty);
-            }
-            return PositionZProperty;
-        }
-
-        public static BindableProperty PositionZProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty OrientationProperty = null;
 #else
-        public static readonly BindableProperty PositionZProperty = null;
+        public static readonly BindableProperty OrientationProperty = null;
 #endif
-        /// <summary>
-        /// OrientationProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty OrientationProperty = BindableProperty.Create(nameof(Orientation), typeof(Rotation), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalOrientationProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ORIENTATION, new Tizen.NUI.PropertyValue((Rotation)newValue));
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalOrientationProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             Rotation temp = new Rotation();
             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ORIENTATION).Get(temp);
             return temp;
-        }));
+        }
 
+        /// <summary>
+        /// ScaleProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ScaleProperty = null;
+#else
+        public static readonly BindableProperty ScaleProperty = null;
+#endif
         internal static void SetInternalScaleProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1384,8 +1332,6 @@ namespace Tizen.NUI.BaseComponents
             }
 
         }
-
-        // ScaleProperty
         internal static object GetInternalScaleProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1398,26 +1344,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ScaleProperty
+        /// ScaleXProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetScaleProperty()
-        {
-            if (ScaleProperty == null)
-            {
-                ScaleProperty = BindableProperty.Create(nameof(Scale), typeof(Vector3), typeof(View), null,
-                    propertyChanged: SetInternalScaleProperty, defaultValueCreator: GetInternalScaleProperty);
-            }
-            return ScaleProperty;
-        }
-
-        public static BindableProperty ScaleProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ScaleXProperty = null;
 #else
-        public static readonly BindableProperty ScaleProperty = null;
+        public static readonly BindableProperty ScaleXProperty = null;
 #endif
-
-        // ScaleXProperty
         internal static void SetInternalScaleXProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1426,7 +1360,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.ScaleX, (float)newValue);
             }
         }
-
         internal static object GetInternalScaleXProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1434,26 +1367,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ScaleXProperty
+        /// ScaleYProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetScaleXProperty()
-        {
-            if (ScaleXProperty == null)
-            {
-                ScaleXProperty = BindableProperty.Create(nameof(ScaleX), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalScaleXProperty, defaultValueCreator: GetInternalScaleXProperty);
-            }
-            return ScaleXProperty;
-        }
-
-        public static BindableProperty ScaleXProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ScaleYProperty = null;
 #else
-        public static readonly BindableProperty ScaleXProperty = null;
+        public static readonly BindableProperty ScaleYProperty = null;
 #endif
-
-        // ScaleYProperty
         internal static void SetInternalScaleYProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1462,7 +1383,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.ScaleY, (float)newValue);
             }
         }
-
         internal static object GetInternalScaleYProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1470,26 +1390,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ScaleYProperty
+        /// ScaleZProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetScaleYProperty()
-        {
-            if (ScaleYProperty == null)
-            {
-                ScaleYProperty = BindableProperty.Create(nameof(ScaleY), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalScaleYProperty, defaultValueCreator: GetInternalScaleYProperty);
-            }
-            return ScaleYProperty;
-        }
-
-        public static BindableProperty ScaleYProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ScaleZProperty = null;
 #else
-        public static readonly BindableProperty ScaleYProperty = null;
+        public static readonly BindableProperty ScaleZProperty = null;
 #endif
-
-        // ScaleZProperty
         internal static void SetInternalScaleZProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1498,7 +1406,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyFloat(view.SwigCPtr, View.Property.ScaleZ, (float)newValue);
             }
         }
-
         internal static object GetInternalScaleZProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1506,26 +1413,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// ScaleZProperty
+        /// NameProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetScaleZProperty()
-        {
-            if (ScaleZProperty == null)
-            {
-                ScaleZProperty = BindableProperty.Create(nameof(ScaleZ), typeof(float), typeof(View), default(float),
-                    propertyChanged: SetInternalScaleZProperty, defaultValueCreator: GetInternalScaleZProperty);
-            }
-            return ScaleZProperty;
-        }
-
-        public static BindableProperty ScaleZProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty NameProperty = null;
 #else
-        public static readonly BindableProperty ScaleZProperty = null;
+        public static readonly BindableProperty NameProperty = null;
 #endif
-        
-        // NameProperty
         internal static void SetInternalNameProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1535,7 +1430,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyString(view.SwigCPtr, View.Property.NAME, (string)newValue);
             }
         }
-
         internal static object GetInternalNameProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1543,47 +1437,38 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// NameProperty
+        /// SensitiveProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetNameProperty()
-        {
-            if (NameProperty == null)
-            {
-                NameProperty = BindableProperty.Create(nameof(Name), typeof(string), typeof(View), string.Empty,
-                    propertyChanged: SetInternalNameProperty, defaultValueCreator: GetInternalNameProperty);
-            }
-            return NameProperty;
-        }
-
-        public static BindableProperty NameProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SensitiveProperty = null;
 #else
-        public static readonly BindableProperty NameProperty = null;
+        public static readonly BindableProperty SensitiveProperty = null;
 #endif
-        /// <summary>
-        /// SensitiveProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty SensitiveProperty = BindableProperty.Create(nameof(Sensitive), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalSensitiveProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.SENSITIVE, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalSensitiveProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.SENSITIVE);
-        }));
+        }
 
         /// <summary>
         /// IsEnabledProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty IsEnabledProperty = BindableProperty.Create(nameof(IsEnabled), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty IsEnabledProperty = null;
+#else
+        public static readonly BindableProperty IsEnabledProperty = null;
+#endif
+        internal static void SetInternalIsEnabledProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -1591,103 +1476,137 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.UserInteractionEnabled, (bool)newValue);
                 view.OnEnabled((bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalIsEnabledProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.UserInteractionEnabled);
-        }));
+        }
 
         /// <summary>
         /// DispatchKeyEventsProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty DispatchKeyEventsProperty = BindableProperty.Create(nameof(DispatchKeyEvents), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty DispatchKeyEventsProperty = null;
+#else
+        public static readonly BindableProperty DispatchKeyEventsProperty = null;
+#endif
+        internal static void SetInternalDispatchKeyEventsProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.DispatchKeyEvents, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalDispatchKeyEventsProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.DispatchKeyEvents);
-        }));
+        }
 
         /// <summary>
         /// LeaveRequiredProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty LeaveRequiredProperty = BindableProperty.Create(nameof(LeaveRequired), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty LeaveRequiredProperty = null;
+#else
+        public static readonly BindableProperty LeaveRequiredProperty = null;
+#endif
+        internal static void SetInternalLeaveRequiredProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.LeaveRequired, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalLeaveRequiredProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.LeaveRequired);
-        }));
+        }
 
         /// <summary>
         /// InheritOrientationProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty InheritOrientationProperty = BindableProperty.Create(nameof(InheritOrientation), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty InheritOrientationProperty = null;
+#else
+        public static readonly BindableProperty InheritOrientationProperty = null;
+#endif
+        internal static void SetInternalInheritOrientationProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.InheritOrientation, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalInheritOrientationProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.InheritOrientation);
-        }));
+        }
 
         /// <summary>
         /// InheritScaleProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty InheritScaleProperty = BindableProperty.Create(nameof(InheritScale), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty InheritScaleProperty = null;
+#else
+        public static readonly BindableProperty InheritScaleProperty = null;
+#endif
+        internal static void SetInternalInheritScaleProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.InheritScale, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalInheritScaleProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.InheritScale);
-        }));
+        }
 
         /// <summary>
         /// DrawModeProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty DrawModeProperty = BindableProperty.Create(nameof(DrawMode), typeof(DrawModeType), typeof(View), DrawModeType.Normal, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty DrawModeProperty = null;
+#else
+        public static readonly BindableProperty DrawModeProperty = null;
+#endif
+        internal static void SetInternalDrawModeProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyInt(view.SwigCPtr, View.Property.DrawMode, (int)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalDrawModeProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return (DrawModeType)Object.InternalGetPropertyInt(view.SwigCPtr, View.Property.DrawMode);
-        }));
+        }
 
+        /// <summary>
+        /// SizeModeFactorProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SizeModeFactorProperty = null;
+#else
+        public static readonly BindableProperty SizeModeFactorProperty = null;
+#endif
         internal static void SetInternalSizeModeFactorProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1697,8 +1616,6 @@ namespace Tizen.NUI.BaseComponents
             }
 
         }
-
-        // SizeModeFactorProperty
         internal static object GetInternalSizeModeFactorProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1711,29 +1628,15 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// SizeModeFactorProperty
+        /// WidthResizePolicyProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetSizeModeFactorProperty()
-        {
-            if (SizeModeFactorProperty == null)
-            {
-                SizeModeFactorProperty = BindableProperty.Create(nameof(SizeModeFactor), typeof(Vector3), typeof(View), null,
-                    propertyChanged: SetInternalSizeModeFactorProperty, defaultValueCreator: GetInternalSizeModeFactorProperty);
-            }
-            return SizeModeFactorProperty;
-        }
-
-        public static BindableProperty SizeModeFactorProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty WidthResizePolicyProperty = null;
 #else
-        public static readonly BindableProperty SizeModeFactorProperty = null;
+        public static readonly BindableProperty WidthResizePolicyProperty = null;
 #endif
-        /// <summary>
-        /// WidthResizePolicyProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty WidthResizePolicyProperty = BindableProperty.Create(nameof(WidthResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalWidthResizePolicyProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -1778,21 +1681,26 @@ namespace Tizen.NUI.BaseComponents
                         break;
                 }
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalWidthResizePolicyProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             string temp;
 
             temp = Object.InternalGetPropertyString(view.SwigCPtr, View.Property.WidthResizePolicy);
             return temp.GetValueByDescription<ResizePolicyType>();
-        }));
+        }
 
         /// <summary>
         /// HeightResizePolicyProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty HeightResizePolicyProperty = BindableProperty.Create(nameof(HeightResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty HeightResizePolicyProperty = null;
+#else
+        public static readonly BindableProperty HeightResizePolicyProperty = null;
+#endif
+        internal static void SetInternalHeightResizePolicyProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -1838,21 +1746,26 @@ namespace Tizen.NUI.BaseComponents
                         break;
                 }
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalHeightResizePolicyProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             string temp;
 
             temp = Object.InternalGetPropertyString(view.SwigCPtr, View.Property.HeightResizePolicy);
             return temp.GetValueByDescription<ResizePolicyType>();
-        }));
+        }
 
         /// <summary>
         /// SizeScalePolicyProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty SizeScalePolicyProperty = BindableProperty.Create(nameof(SizeScalePolicy), typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SizeScalePolicyProperty = null;
+#else
+        public static readonly BindableProperty SizeScalePolicyProperty = null;
+#endif
+        internal static void SetInternalSizeScalePolicyProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             string valueToString = "";
@@ -1862,38 +1775,48 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyString(view.SwigCPtr, View.Property.SizeScalePolicy, valueToString);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalSizeScalePolicyProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return (SizeScalePolicyType)Object.InternalGetPropertyInt(view.SwigCPtr, View.Property.SizeScalePolicy);
-        }));
+        }
 
         /// <summary>
         /// WidthForHeightProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty WidthForHeightProperty = BindableProperty.Create(nameof(WidthForHeight), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty WidthForHeightProperty = null;
+#else
+        public static readonly BindableProperty WidthForHeightProperty = null;
+#endif
+        internal static void SetInternalWidthForHeightProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.WidthForHeight, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalWidthForHeightProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.WidthForHeight);
-        }));
+        }
 
         /// <summary>
         /// HeightForWidthProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty HeightForWidthProperty = BindableProperty.Create(nameof(HeightForWidth), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty HeightForWidthProperty = null;
+#else
+        public static readonly BindableProperty HeightForWidthProperty = null;
+#endif
+        internal static void SetInternalHeightForWidthProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -1901,15 +1824,23 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.HeightForWidth, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalHeightForWidthProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.HeightForWidth);
-        }));
+        }
 
-        // PaddingProperty
+        /// <summary>
+        /// PaddingProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PaddingProperty = null;
+#else
+        public static readonly BindableProperty PaddingProperty = null;
+#endif
         internal static void SetInternalPaddingProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -1934,7 +1865,6 @@ namespace Tizen.NUI.BaseComponents
                 }
             }
         }
-
         internal static object GetInternalPaddingProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -1965,26 +1895,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// PaddingProperty
+        /// SizeProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetPaddingProperty()
-        {
-            if (PaddingProperty == null)
-            {
-                PaddingProperty = BindableProperty.Create(nameof(Padding), typeof(Extents), typeof(View), null,
-                    propertyChanged: SetInternalPaddingProperty, defaultValueCreator: GetInternalPaddingProperty);
-            }
-            return PaddingProperty;
-        }
-
-        public static BindableProperty PaddingProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty SizeProperty = null;
 #else
-        public static readonly BindableProperty PaddingProperty = null;
+        public static readonly BindableProperty SizeProperty = null;
 #endif
-
-        // SizeProperty
         internal static void SetInternalSizeProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -2026,7 +1944,6 @@ namespace Tizen.NUI.BaseComponents
                 view.SetSize(width, height, depth);
             }
         }
-
         internal static object GetInternalSizeProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -2041,26 +1958,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// SizeProperty
+        /// MinimumSizeProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetSizeProperty()
-        {
-            if (SizeProperty == null)
-            {
-                SizeProperty = BindableProperty.Create(nameof(Size), typeof(Size), typeof(View), null,
-                    propertyChanged: SetInternalSizeProperty, defaultValueCreator: GetInternalSizeProperty);
-            }
-            return SizeProperty;
-        }
-
-        public static BindableProperty SizeProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty MinimumSizeProperty = null;
 #else
-        public static readonly BindableProperty SizeProperty = null;
+        public static readonly BindableProperty MinimumSizeProperty = null;
 #endif
-
-        // MinimumSizeProperty
         internal static void SetInternalMinimumSizeProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -2070,7 +1975,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyVector2(view.SwigCPtr, View.Property.MinimumSize, ((Size2D)newValue).SwigCPtr);
             }
         }
-
         internal static object GetInternalMinimumSizeProperty(BindableObject bindable)
         {
 
@@ -2084,26 +1988,14 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// MinimumSizeProperty
+        /// MaximumSizeProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetMinimumSizeProperty()
-        {
-            if (MinimumSizeProperty == null)
-            {
-                MinimumSizeProperty = BindableProperty.Create(nameof(MinimumSize), typeof(Size2D), typeof(View), null,
-                    propertyChanged: SetInternalMinimumSizeProperty, defaultValueCreator: GetInternalMinimumSizeProperty);
-            }
-            return MinimumSizeProperty;
-        }
-
-        public static BindableProperty MinimumSizeProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty MaximumSizeProperty = null;
 #else
-        public static readonly BindableProperty MinimumSizeProperty = null;
+        public static readonly BindableProperty MaximumSizeProperty = null;
 #endif
-
-        // MaximumSizeProperty
         internal static void SetInternalMaximumSizeProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -2113,7 +2005,6 @@ namespace Tizen.NUI.BaseComponents
                 Object.InternalSetPropertyVector2(view.SwigCPtr, View.Property.MaximumSize, ((Size2D)newValue).SwigCPtr);
             }
         }
-
         internal static object GetInternalMaximumSizeProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -2127,49 +2018,39 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// MaximumSizeProperty
+        /// InheritPositionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetMaximumSizeProperty()
-        {
-            if (MaximumSizeProperty == null)
-            {
-                MaximumSizeProperty = BindableProperty.Create(nameof(MaximumSize), typeof(Size2D), typeof(View), null,
-                    propertyChanged: SetInternalMaximumSizeProperty, defaultValueCreator: GetInternalMaximumSizeProperty);
-            }
-            return MaximumSizeProperty;
-        }
-
-        public static BindableProperty MaximumSizeProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty InheritPositionProperty = null;
 #else
-        public static readonly BindableProperty MaximumSizeProperty = null;
+        public static readonly BindableProperty InheritPositionProperty = null;
 #endif
-
-        /// <summary>
-        /// InheritPositionProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty InheritPositionProperty = BindableProperty.Create(nameof(InheritPosition), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalInheritPositionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.InheritPosition, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalInheritPositionProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.InheritPosition);
-        }));
+        }
 
         /// <summary>
         /// ClippingModeProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty ClippingModeProperty = BindableProperty.Create(nameof(ClippingMode), typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ClippingModeProperty = null;
+#else
+        public static readonly BindableProperty ClippingModeProperty = null;
+#endif
+        internal static void SetInternalClippingModeProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2177,19 +2058,24 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyInt(view.SwigCPtr, View.Property.ClippingMode, (int)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalClippingModeProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return (ClippingModeType)Object.InternalGetPropertyInt(view.SwigCPtr, View.Property.ClippingMode);
-        }));
+        }
 
         /// <summary>
         /// InheritLayoutDirectionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty InheritLayoutDirectionProperty = BindableProperty.Create(nameof(InheritLayoutDirection), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty InheritLayoutDirectionProperty = null;
+#else
+        public static readonly BindableProperty InheritLayoutDirectionProperty = null;
+#endif
+        internal static void SetInternalInheritLayoutDirectionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2197,19 +2083,24 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.InheritLayoutDirection, (bool)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalInheritLayoutDirectionProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.InheritLayoutDirection);
-        }));
+        }
 
         /// <summary>
         /// LayoutDirectionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty LayoutDirectionProperty = BindableProperty.Create(nameof(LayoutDirection), typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty LayoutDirectionProperty = null;
+#else
+        public static readonly BindableProperty LayoutDirectionProperty = null;
+#endif
+        internal static void SetInternalLayoutDirectionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2217,15 +2108,23 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyInt(view.SwigCPtr, View.Property.LayoutDirection, (int)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalLayoutDirectionProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return (ViewLayoutDirectionType)Object.InternalGetPropertyInt(view.SwigCPtr, View.Property.LayoutDirection);
-        }));
+        }
 
-        // MarginProperty
+        /// <summary>
+        /// MarginProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty MarginProperty = null;
+#else
+        public static readonly BindableProperty MarginProperty = null;
+#endif
         internal static void SetInternalMarginProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
@@ -2250,7 +2149,6 @@ namespace Tizen.NUI.BaseComponents
                 }
             }
         }
-
         internal static object GetInternalMarginProperty(BindableObject bindable)
         {
             var view = (View)bindable;
@@ -2282,30 +2180,15 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// MarginProperty
+        /// UpdateAreaHintProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetMarginProperty()
-        {
-            if (MarginProperty == null)
-            {
-                MarginProperty = BindableProperty.Create(nameof(Margin), typeof(Extents), typeof(View), null,
-                    propertyChanged: SetInternalMarginProperty, defaultValueCreator: GetInternalMarginProperty);
-            }
-            return MarginProperty;
-        }
-
-        public static BindableProperty MarginProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty UpdateAreaHintProperty = null;
 #else
-        public static readonly BindableProperty MarginProperty = null;
+        public static readonly BindableProperty UpdateAreaHintProperty = null;
 #endif
-
-        /// <summary>
-        /// UpdateAreaHintProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty UpdateAreaHintProperty = BindableProperty.Create(nameof(UpdateAreaHint), typeof(Vector4), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+        internal static void SetInternalUpdateAreaHintProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2313,21 +2196,26 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyVector4(view.SwigCPtr, Interop.ActorProperty.UpdateAreaHintGet(), ((Vector4)newValue).SwigCPtr);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalUpdateAreaHintProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
 
             Object.InternalRetrievingPropertyVector4(view.SwigCPtr, Interop.ActorProperty.UpdateAreaHintGet(), temp.SwigCPtr);
             return temp;
-        }));
+        }
 
         /// <summary>
         /// ImageShadow Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty ImageShadowProperty = BindableProperty.Create(nameof(ImageShadow), typeof(ImageShadow), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ImageShadowProperty = null;
+#else
+        public static readonly BindableProperty ImageShadowProperty = null;
+#endif
+        internal static void SetInternalImageShadowProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
 
@@ -2342,8 +2230,8 @@ namespace Tizen.NUI.BaseComponents
             {
                 view.SetShadow((ImageShadow)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalImageShadowProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
@@ -2355,13 +2243,18 @@ namespace Tizen.NUI.BaseComponents
 
             var shadow = new ImageShadow(map);
             return shadow.IsEmpty() ? null : shadow;
-        }));
+        }
 
         /// <summary>
         /// Shadow Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BoxShadowProperty = BindableProperty.Create(nameof(BoxShadow), typeof(Shadow), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BoxShadowProperty = null;
+#else
+        public static readonly BindableProperty BoxShadowProperty = null;
+#endif
+        internal static void SetInternalBoxShadowProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
 
@@ -2376,8 +2269,8 @@ namespace Tizen.NUI.BaseComponents
             {
                 view.SetShadow((Shadow)newValue);
             }
-        }),
-        defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
+        }
+        internal static object GetInternalBoxShadowProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
@@ -2389,29 +2282,39 @@ namespace Tizen.NUI.BaseComponents
 
             var shadow = new Shadow(map);
             return shadow.IsEmpty() ? null : shadow;
-        }));
+        }
 
         /// <summary>
         /// CornerRadius Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty CornerRadiusProperty = BindableProperty.Create(nameof(CornerRadius), typeof(Vector4), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty CornerRadiusProperty = null;
+#else
+        public static readonly BindableProperty CornerRadiusProperty = null;
+#endif
+        internal static void SetInternalCornerRadiusProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).CornerRadius = (Vector4)newValue;
             view.UpdateBackgroundExtraData(BackgroundExtraDataUpdatedFlag.CornerRadius);
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalCornerRadiusProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.backgroundExtraData == null ? 0.0f : view.backgroundExtraData.CornerRadius;
-        });
+        }
 
         /// <summary>
         /// CornerRadiusPolicy Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty CornerRadiusPolicyProperty = BindableProperty.Create(nameof(CornerRadiusPolicy), typeof(VisualTransformPolicyType), typeof(View), VisualTransformPolicyType.Absolute, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty CornerRadiusPolicyProperty = null;
+#else
+        public static readonly BindableProperty CornerRadiusPolicyProperty = null;
+#endif
+        internal static void SetInternalCornerRadiusPolicyProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).CornerRadiusPolicy = (VisualTransformPolicyType)newValue;
@@ -2420,108 +2323,130 @@ namespace Tizen.NUI.BaseComponents
             {
                 view.UpdateBackgroundExtraData(BackgroundExtraDataUpdatedFlag.CornerRadius);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalCornerRadiusPolicyProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.backgroundExtraData == null ? VisualTransformPolicyType.Absolute : view.backgroundExtraData.CornerRadiusPolicy;
-        });
+        }
 
         /// <summary>
         /// BorderlineWidth Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BorderlineWidthProperty = BindableProperty.Create(nameof(BorderlineWidth), typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BorderlineWidthProperty = null;
+#else
+        public static readonly BindableProperty BorderlineWidthProperty = null;
+#endif
+        internal static void SetInternalBorderlineWidthProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).BorderlineWidth = (float)newValue;
             view.UpdateBackgroundExtraData(BackgroundExtraDataUpdatedFlag.Borderline);
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalBorderlineWidthProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.backgroundExtraData == null ? 0.0f : view.backgroundExtraData.BorderlineWidth;
-        });
+        }
 
         /// <summary>
         /// BorderlineColor Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BorderlineColorProperty = BindableProperty.Create(nameof(BorderlineColor), typeof(Color), typeof(View), null,
-            propertyChanged: (bindable, oldValue, newValue) =>
-            {
-                var view = (View)bindable;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BorderlineColorProperty = null;
+#else
+        public static readonly BindableProperty BorderlineColorProperty = null;
+#endif
+        internal static void SetInternalBorderlineColorProperty(BindableObject bindable, object oldValue, object newValue)
+        {
+            var view = (View)bindable;
 
-                view.themeData?.selectorData?.BorderlineColor?.Reset(view);
+            view.themeData?.selectorData?.BorderlineColor?.Reset(view);
 
-                if (newValue is Selector<Color> selector)
-                {
-                    if (selector.HasAll()) view.SetBorderlineColor(selector.All);
-                    else view.EnsureSelectorData().BorderlineColor = new TriggerableSelector<Color>(view, selector, view.SetBorderlineColor, true);
-                }
-                else
-                {
-                    view.SetBorderlineColor((Color)newValue);
-                }
-            },
-            defaultValueCreator: (bindable) =>
+            if (newValue is Selector<Color> selector)
+            {
+                if (selector.HasAll()) view.SetBorderlineColor(selector.All);
+                else view.EnsureSelectorData().BorderlineColor = new TriggerableSelector<Color>(view, selector, view.SetBorderlineColor, true);
+            }
+            else
             {
-                var view = (View)bindable;
-                return view.backgroundExtraData == null ? Color.Black : view.backgroundExtraData.BorderlineColor;
+                view.SetBorderlineColor((Color)newValue);
             }
-        );
+        }
+        internal static object GetInternalBorderlineColorProperty(BindableObject bindable)
+        {
+            var view = (View)bindable;
+            return view.backgroundExtraData == null ? Color.Black : view.backgroundExtraData.BorderlineColor;
+        }
 
         /// <summary>
         /// BorderlineColorSelector Property
         /// Like BackgroundColor, color selector typed BorderlineColor should be used in ViewStyle only.
         /// So this API is internally used only.
         /// </summary>
-        internal static readonly BindableProperty BorderlineColorSelectorProperty = BindableProperty.Create(nameof(BorderlineColorSelector), typeof(Selector<Color>), typeof(View), null,
-            propertyChanged: (bindable, oldValue, newValue) =>
-            {
-                var view = (View)bindable;
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BorderlineColorSelectorProperty = null;
+#else
+        public static readonly BindableProperty BorderlineColorSelectorProperty = null;
+#endif
+        internal static void SetInternalBorderlineColorSelectorProperty(BindableObject bindable, object oldValue, object newValue)
+        {
+            var view = (View)bindable;
 
-                view.themeData?.selectorData?.BorderlineColor?.Reset(view);
+            view.themeData?.selectorData?.BorderlineColor?.Reset(view);
 
-                if (newValue is Selector<Color> selector)
-                {
-                    if (selector.HasAll()) view.SetBorderlineColor(selector.All);
-                    else view.EnsureSelectorData().BorderlineColor = new TriggerableSelector<Color>(view, selector, view.SetBorderlineColor, true);
-                }
-                else
-                {
-                    view.SetBorderlineColor((Color)newValue);
-                }
-            },
-            defaultValueCreator: (bindable) =>
+            if (newValue is Selector<Color> selector)
+            {
+                if (selector.HasAll()) view.SetBorderlineColor(selector.All);
+                else view.EnsureSelectorData().BorderlineColor = new TriggerableSelector<Color>(view, selector, view.SetBorderlineColor, true);
+            }
+            else
             {
-                var view = (View)bindable;
-                var selector = view.themeData?.selectorData?.BorderlineColor?.Get();
-                return (null != selector) ? selector : new Selector<Color>();
+                view.SetBorderlineColor((Color)newValue);
             }
-        );
+        }
+        internal static object GetInternalBorderlineColorSelectorProperty(BindableObject bindable)
+        {
+            var view = (View)bindable;
+            var selector = view.themeData?.selectorData?.BorderlineColor?.Get();
+            return (null != selector) ? selector : new Selector<Color>();
+        }
 
         /// <summary>
         /// BorderlineOffset Property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BorderlineOffsetProperty = BindableProperty.Create(nameof(BorderlineOffset), typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BorderlineOffsetProperty = null;
+#else
+        public static readonly BindableProperty BorderlineOffsetProperty = null;
+#endif
+        internal static void SetInternalBorderlineOffsetProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).BorderlineOffset = (float)newValue;
             view.UpdateBackgroundExtraData(BackgroundExtraDataUpdatedFlag.Borderline);
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalBorderlineOffsetProperty(BindableObject bindable)
         {
             var view = (View)bindable;
             return view.backgroundExtraData == null ? 0.0f : view.backgroundExtraData.BorderlineOffset;
-        });
+        }
 
         /// <summary>
         /// EnableControlState property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty EnableControlStateProperty = BindableProperty.Create(nameof(EnableControlState), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty EnableControlStateProperty = null;
+#else
+        public static readonly BindableProperty EnableControlStateProperty = null;
+#endif
+        internal static void SetInternalEnableControlStateProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             bool prev = view.enableControlState;
@@ -2538,17 +2463,22 @@ namespace Tizen.NUI.BaseComponents
                     view.TouchEvent += view.EmptyOnTouch;
                 }
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalEnableControlStateProperty(BindableObject bindable)
         {
             return ((View)bindable).enableControlState;
-        });
+        }
 
         /// <summary>
         /// ThemeChangeSensitive property
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty ThemeChangeSensitiveProperty = BindableProperty.Create(nameof(ThemeChangeSensitive), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ThemeChangeSensitiveProperty = null;
+#else
+        public static readonly BindableProperty ThemeChangeSensitiveProperty = null;
+#endif
+        internal static void SetInternalThemeChangeSensitiveProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
 
@@ -2568,37 +2498,45 @@ namespace Tizen.NUI.BaseComponents
                 view.themeData.ListeningThemeChangeEvent = false;
                 ThemeManager.ThemeChangedInternal.Remove(view.OnThemeChanged);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalThemeChangeSensitiveProperty(BindableObject bindable)
         {
             return ((View)bindable).themeData?.ThemeChangeSensitive ?? ThemeManager.ApplicationThemeChangeSensitive;
-        });
+        }
 
         /// <summary>
         /// AccessibilityNameProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AccessibilityNameProperty = BindableProperty.Create(nameof(AccessibilityName), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AccessibilityNameProperty = null;
+#else
+        public static readonly BindableProperty AccessibilityNameProperty = null;
+#endif
+        internal static void SetInternalAccessibilityNameProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
             {
-
                 Object.InternalSetPropertyString(view.SwigCPtr, View.Property.AccessibilityName, (string)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAccessibilityNameProperty(BindableObject bindable)
         {
             var view = (View)bindable;
-
             return Object.InternalGetPropertyString(view.SwigCPtr, View.Property.AccessibilityName);
-        });
+        }
 
         /// <summary>
         /// AccessibilityDescriptionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AccessibilityDescriptionProperty = BindableProperty.Create(nameof(AccessibilityDescription), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AccessibilityDescriptionProperty = null;
+#else
+        public static readonly BindableProperty AccessibilityDescriptionProperty = null;
+#endif
+        internal static void SetInternalAccessibilityDescriptionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2606,19 +2544,24 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyString(view.SwigCPtr, View.Property.AccessibilityDescription, (string)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAccessibilityDescriptionProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyString(view.SwigCPtr, View.Property.AccessibilityDescription);
-        });
+        }
 
         /// <summary>
         /// AccessibilityTranslationDomainProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AccessibilityTranslationDomainProperty = BindableProperty.Create(nameof(AccessibilityTranslationDomain), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AccessibilityTranslationDomainProperty = null;
+#else
+        public static readonly BindableProperty AccessibilityTranslationDomainProperty = null;
+#endif
+        internal static void SetInternalAccessibilityTranslationDomainProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2626,19 +2569,24 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyString(view.SwigCPtr, View.Property.AccessibilityTranslationDomain, (string)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAccessibilityTranslationDomainProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyString(view.SwigCPtr, View.Property.AccessibilityTranslationDomain);
-        });
+        }
 
         /// <summary>
         /// AccessibilityRoleProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AccessibilityRoleProperty = BindableProperty.Create(nameof(AccessibilityRole), typeof(Role), typeof(View), default(Role), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AccessibilityRoleProperty = null;
+#else
+        public static readonly BindableProperty AccessibilityRoleProperty = null;
+#endif
+        internal static void SetInternalAccessibilityRoleProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2646,19 +2594,24 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyInt(view.SwigCPtr, View.Property.AccessibilityRole, (int)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAccessibilityRoleProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return (Role)Object.InternalGetPropertyInt(view.SwigCPtr, View.Property.AccessibilityRole);
-        });
+        }
 
         /// <summary>
         /// AccessibilityHighlightableProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AccessibilityHighlightableProperty = BindableProperty.Create(nameof(AccessibilityHighlightable), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AccessibilityHighlightableProperty = null;
+#else
+        public static readonly BindableProperty AccessibilityHighlightableProperty = null;
+#endif
+        internal static void SetInternalAccessibilityHighlightableProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2666,19 +2619,24 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.AccessibilityHighlightable, (bool)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAccessibilityHighlightableProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.AccessibilityHighlightable);
-        });
+        }
 
         /// <summary>
         /// AccessibilityHiddenProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AccessibilityHiddenProperty = BindableProperty.Create(nameof(AccessibilityHidden), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AccessibilityHiddenProperty = null;
+#else
+        public static readonly BindableProperty AccessibilityHiddenProperty = null;
+#endif
+        internal static void SetInternalAccessibilityHiddenProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var view = (View)bindable;
             if (newValue != null)
@@ -2686,69 +2644,92 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyBool(view.SwigCPtr, View.Property.AccessibilityHidden, (bool)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAccessibilityHiddenProperty(BindableObject bindable)
         {
             var view = (View)bindable;
 
             return Object.InternalGetPropertyBool(view.SwigCPtr, View.Property.AccessibilityHidden);
-        });
+        }
 
         /// <summary>
         /// ExcludeLayoutingProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty ExcludeLayoutingProperty = BindableProperty.Create(nameof(ExcludeLayouting), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty ExcludeLayoutingProperty = null;
+#else
+        public static readonly BindableProperty ExcludeLayoutingProperty = null;
+#endif
+        internal static void SetInternalExcludeLayoutingProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalExcludeLayouting = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalExcludeLayoutingProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalExcludeLayouting;
-        });
+        }
 
         /// <summary>
         /// TooltipTextProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty TooltipTextProperty = BindableProperty.Create(nameof(TooltipText), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty TooltipTextProperty = null;
+#else
+        public static readonly BindableProperty TooltipTextProperty = null;
+#endif
+        internal static void SetInternalTooltipTextProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalTooltipText = (string)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalTooltipTextProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalTooltipText;
-        });
+        }
 
         /// <summary>
         /// PositionUsesAnchorPointProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty PositionUsesAnchorPointProperty = BindableProperty.Create(nameof(PositionUsesAnchorPoint), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PositionUsesAnchorPointProperty = null;
+#else
+        public static readonly BindableProperty PositionUsesAnchorPointProperty = null;
+#endif
+        internal static void SetInternalPositionUsesAnchorPointProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalPositionUsesAnchorPoint = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalPositionUsesAnchorPointProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalPositionUsesAnchorPoint;
-        });
+        }
 
-        // AnchorPointProperty
+        /// <summary>
+        /// AnchorPointProperty
+        /// </summary>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AnchorPointProperty = null;
+#else
+        public static readonly BindableProperty AnchorPointProperty = null;
+#endif
         internal static void SetInternalAnchorPointProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
@@ -2757,7 +2738,6 @@ namespace Tizen.NUI.BaseComponents
                 instance.InternalAnchorPoint = (Tizen.NUI.Position)newValue;
             }
         }
-
         internal static object GetInternalAnchorPointProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
@@ -2765,265 +2745,314 @@ namespace Tizen.NUI.BaseComponents
         }
 
         /// <summary>
-        /// AnchorPointProperty
+        /// WidthSpecificationProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-#if REMOVE_READONLY
-        internal static BindableProperty GetAnchorPointProperty()
-        {
-            if (AnchorPointProperty == null)
-            {
-                AnchorPointProperty = BindableProperty.Create(nameof(AnchorPoint), typeof(Tizen.NUI.Position), typeof(View), null,
-                    propertyChanged: SetInternalAnchorPointProperty, defaultValueCreator: GetInternalAnchorPointProperty);
-            }
-            return AnchorPointProperty;
-        }
-
-        public static BindableProperty AnchorPointProperty = null;
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty WidthSpecificationProperty = null;
 #else
-        public static readonly BindableProperty AnchorPointProperty = null;
+        public static readonly BindableProperty WidthSpecificationProperty = null;
 #endif
-
-        /// <summary>
-        /// WidthSpecificationProperty
-        /// </summary>
-        [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty WidthSpecificationProperty = BindableProperty.Create(nameof(WidthSpecification), typeof(int), typeof(View), 0, propertyChanged: (bindable, oldValue, newValue) =>
+        internal static void SetInternalWidthSpecificationProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalWidthSpecification = (int)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalWidthSpecificationProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalWidthSpecification;
-        });
+        }
 
         /// <summary>
         /// HeightSpecificationProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty HeightSpecificationProperty = BindableProperty.Create(nameof(HeightSpecification), typeof(int), typeof(View), 0, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty HeightSpecificationProperty = null;
+#else
+        public static readonly BindableProperty HeightSpecificationProperty = null;
+#endif
+        internal static void SetInternalHeightSpecificationProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalHeightSpecification = (int)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalHeightSpecificationProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalHeightSpecification;
-        });
+        }
 
         /// <summary>
         /// LayoutTransitionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty LayoutTransitionProperty = BindableProperty.Create(nameof(LayoutTransition), typeof(Tizen.NUI.LayoutTransition), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty LayoutTransitionProperty = null;
+#else
+        public static readonly BindableProperty LayoutTransitionProperty = null;
+#endif
+        internal static void SetInternalLayoutTransitionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalLayoutTransition = (Tizen.NUI.LayoutTransition)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalLayoutTransitionProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalLayoutTransition;
-        });
+        }
 
         /// <summary>
         /// PaddingEXProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty PaddingEXProperty = BindableProperty.Create(nameof(PaddingEX), typeof(Tizen.NUI.Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PaddingEXProperty = null;
+#else
+        public static readonly BindableProperty PaddingEXProperty = null;
+#endif
+        internal static void SetInternalPaddingEXProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalPaddingEX = (Tizen.NUI.Extents)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalPaddingEXProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalPaddingEX;
-        });
+        }
 
         /// <summary>
         /// LayoutProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty LayoutProperty = BindableProperty.Create(nameof(Layout), typeof(Tizen.NUI.LayoutItem), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty LayoutProperty = null;
+#else
+        public static readonly BindableProperty LayoutProperty = null;
+#endif
+        internal static void SetInternalLayoutProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalLayout = (Tizen.NUI.LayoutItem)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalLayoutProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalLayout;
-        });
+        }
 
         /// <summary>
         /// BackgroundImageSynchronosLoadingProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BackgroundImageSynchronosLoadingProperty = BindableProperty.Create(nameof(BackgroundImageSynchronosLoading), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BackgroundImageSynchronosLoadingProperty = null;
+#else
+        public static readonly BindableProperty BackgroundImageSynchronosLoadingProperty = null;
+#endif
+        internal static void SetInternalBackgroundImageSynchronosLoadingProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalBackgroundImageSynchronosLoading = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalBackgroundImageSynchronosLoadingProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalBackgroundImageSynchronosLoading;
-        });
+        }
 
         /// <summary>
         /// BackgroundImageSynchronousLoadingProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BackgroundImageSynchronousLoadingProperty = BindableProperty.Create(nameof(BackgroundImageSynchronousLoading), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BackgroundImageSynchronousLoadingProperty = null;
+#else
+        public static readonly BindableProperty BackgroundImageSynchronousLoadingProperty = null;
+#endif
+        internal static void SetInternalBackgroundImageSynchronousLoadingProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalBackgroundImageSynchronousLoading = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalBackgroundImageSynchronousLoadingProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalBackgroundImageSynchronousLoading;
-        });
+        }
 
         /// <summary>
         /// EnableControlStatePropagationProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty EnableControlStatePropagationProperty = BindableProperty.Create(nameof(EnableControlStatePropagation), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty EnableControlStatePropagationProperty = null;
+#else
+        public static readonly BindableProperty EnableControlStatePropagationProperty = null;
+#endif
+        internal static void SetInternalEnableControlStatePropagationProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalEnableControlStatePropagation = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalEnableControlStatePropagationProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalEnableControlStatePropagation;
-        });
+        }
 
         /// <summary>
         /// PropagatableControlStatesProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty PropagatableControlStatesProperty = BindableProperty.Create(nameof(PropagatableControlStates), typeof(ControlState), typeof(View), ControlState.All, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty PropagatableControlStatesProperty = null;
+#else
+        public static readonly BindableProperty PropagatableControlStatesProperty = null;
+#endif
+        internal static void SetInternalPropagatableControlStatesProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalPropagatableControlStates = (ControlState)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalPropagatableControlStatesProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalPropagatableControlStates;
-        });
+        }
 
         /// <summary>
         /// GrabTouchAfterLeaveProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty GrabTouchAfterLeaveProperty = BindableProperty.Create(nameof(GrabTouchAfterLeave), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty GrabTouchAfterLeaveProperty = null;
+#else
+        public static readonly BindableProperty GrabTouchAfterLeaveProperty = null;
+#endif
+        internal static void SetInternalGrabTouchAfterLeaveProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalGrabTouchAfterLeave = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalGrabTouchAfterLeaveProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalGrabTouchAfterLeave;
-        });
+        }
 
         /// <summary>
         /// AllowOnlyOwnTouchProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AllowOnlyOwnTouchProperty = BindableProperty.Create(nameof(AllowOnlyOwnTouch), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AllowOnlyOwnTouchProperty = null;
+#else
+        public static readonly BindableProperty AllowOnlyOwnTouchProperty = null;
+#endif
+        internal static void SetInternalAllowOnlyOwnTouchProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalAllowOnlyOwnTouch = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAllowOnlyOwnTouchProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalAllowOnlyOwnTouch;
-        });
-
+        }
 
         /// <summary>
         /// BlendEquationProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty BlendEquationProperty = BindableProperty.Create(nameof(BlendEquation), typeof(BlendEquationType), typeof(View), default(BlendEquationType), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty BlendEquationProperty = null;
+#else
+        public static readonly BindableProperty BlendEquationProperty = null;
+#endif
+        internal static void SetInternalBlendEquationProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalBlendEquation = (Tizen.NUI.BlendEquationType)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalBlendEquationProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalBlendEquation;
-        });
+        }
 
         /// <summary>
         /// TransitionOptionsProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty TransitionOptionsProperty = BindableProperty.Create(nameof(TransitionOptions), typeof(TransitionOptions), typeof(View), default(TransitionOptions), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty TransitionOptionsProperty = null;
+#else
+        public static readonly BindableProperty TransitionOptionsProperty = null;
+#endif
+        internal static void SetInternalTransitionOptionsProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalTransitionOptions = (Tizen.NUI.TransitionOptions)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalTransitionOptionsProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalTransitionOptions;
-        });
+        }
 
         /// <summary>
         /// AutomationIdProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty AutomationIdProperty = BindableProperty.Create(nameof(AutomationId), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty AutomationIdProperty = null;
+#else
+        public static readonly BindableProperty AutomationIdProperty = null;
+#endif
+        internal static void SetInternalAutomationIdProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
@@ -3031,67 +3060,435 @@ namespace Tizen.NUI.BaseComponents
 
                 Object.InternalSetPropertyString(instance.SwigCPtr, View.Property.AutomationId, (string)newValue);
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalAutomationIdProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
 
             return Object.InternalGetPropertyString(instance.SwigCPtr, View.Property.AutomationId);
-        });
+        }
 
         /// <summary>
         /// TouchAreaOffsetProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty TouchAreaOffsetProperty = BindableProperty.Create(nameof(TouchAreaOffset), typeof(Offset), typeof(View), default(Offset), propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty TouchAreaOffsetProperty = null;
+#else
+        public static readonly BindableProperty TouchAreaOffsetProperty = null;
+#endif
+        internal static void SetInternalTouchAreaOffsetProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalTouchAreaOffset = (Tizen.NUI.Offset)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalTouchAreaOffsetProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalTouchAreaOffset;
-        });
+        }
 
         /// <summary>
         /// DispatchTouchMotionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty DispatchTouchMotionProperty = BindableProperty.Create(nameof(DispatchTouchMotion), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty DispatchTouchMotionProperty = null;
+#else
+        public static readonly BindableProperty DispatchTouchMotionProperty = null;
+#endif
+        internal static void SetInternalDispatchTouchMotionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalDispatchTouchMotion = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+        internal static object GetInternalDispatchTouchMotionProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalDispatchTouchMotion;
-        });
+        }
 
         /// <summary>
         /// DispatchHoverMotionProperty
         /// </summary>
         [EditorBrowsable(EditorBrowsableState.Never)]
-        public static readonly BindableProperty DispatchHoverMotionProperty = BindableProperty.Create(nameof(DispatchHoverMotion), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        public static BindableProperty DispatchHoverMotionProperty = null;
+#else
+        public static readonly BindableProperty DispatchHoverMotionProperty = null;
+#endif
+        internal static void SetInternalDispatchHoverMotionProperty(BindableObject bindable, object oldValue, object newValue)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             if (newValue != null)
             {
                 instance.InternalDispatchHoverMotion = (bool)newValue;
             }
-        },
-        defaultValueCreator: (bindable) =>
+        }
+
+        internal static object GetInternalDispatchHoverMotionProperty(BindableObject bindable)
         {
             var instance = (Tizen.NUI.BaseComponents.View)bindable;
             return instance.InternalDispatchHoverMotion;
-        });
+        }
+
+#if REMOVE_READONLY_FOR_BINDABLE_PROPERTY
+        internal static void CreateBindableProperties()
+        {
+            StyleNameProperty = BindableProperty.Create(nameof(StyleName), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalStyleNameProperty, defaultValueCreator: GetInternalStyleNameProperty);
+
+            KeyInputFocusProperty = BindableProperty.Create(nameof(KeyInputFocus), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalKeyInputFocusProperty, defaultValueCreator: GetInternalKeyInputFocusProperty);
+
+            BackgroundColorProperty = BindableProperty.Create(nameof(BackgroundColor), typeof(Color), typeof(View), null,
+                propertyChanged: SetInternalBackgroundColorProperty, defaultValueCreator: GetInternalBackgroundColorProperty);
+
+            ColorProperty = BindableProperty.Create(nameof(Color), typeof(Color), typeof(View), null,
+                propertyChanged: SetInternalColorProperty, defaultValueCreator: GetInternalColorProperty);
+
+            ColorRedProperty = BindableProperty.Create(nameof(ColorRed), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalColorRedProperty, defaultValueCreator: GetInternalColorRedProperty);
+
+            ColorGreenProperty = BindableProperty.Create(nameof(ColorGreen), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalColorGreenProperty, defaultValueCreator: GetInternalColorGreenProperty);
+
+            ColorBlueProperty = BindableProperty.Create(nameof(ColorBlue), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalColorBlueProperty, defaultValueCreator: GetInternalColorBlueProperty);
+
+            BackgroundImageProperty = BindableProperty.Create(nameof(BackgroundImage), typeof(string), typeof(View), default(string),
+                propertyChanged: SetInternalBackgroundImageProperty, defaultValueCreator: GetInternalBackgroundImageProperty);
+
+            BackgroundImageBorderProperty = BindableProperty.Create(nameof(BackgroundImageBorder), typeof(Rectangle), typeof(View), default(Rectangle),
+                propertyChanged: SetInternalBackgroundImageBorderProperty, defaultValueCreator: GetInternalBackgroundImageBorderProperty);
+
+            BackgroundProperty = BindableProperty.Create(nameof(Background), typeof(PropertyMap), typeof(View), null,
+                propertyChanged: SetInternalBackgroundProperty, defaultValueCreator: GetInternalBackgroundProperty);
+
+            StateProperty = BindableProperty.Create(nameof(State), typeof(States), typeof(View), States.Normal,
+                propertyChanged: SetInternalStateProperty, defaultValueCreator: GetInternalStateProperty);
+
+            SubStateProperty = BindableProperty.Create(nameof(SubState), typeof(States), typeof(View), States.Normal,
+                propertyChanged: SetInternalSubStateProperty, defaultValueCreator: GetInternalSubStateProperty);
+
+            TooltipProperty = BindableProperty.Create(nameof(Tooltip), typeof(PropertyMap), typeof(View), null,
+                propertyChanged: SetInternalTooltipProperty, defaultValueCreator: GetInternalTooltipProperty);
+
+            FlexProperty = BindableProperty.Create(nameof(Flex), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalFlexProperty, defaultValueCreator: GetInternalFlexProperty);
+
+            AlignSelfProperty = BindableProperty.Create(nameof(AlignSelf), typeof(int), typeof(View), default(int),
+                propertyChanged: SetInternalAlignSelfProperty, defaultValueCreator: GetInternalAlignSelfProperty);
+
+            FlexMarginProperty = BindableProperty.Create(nameof(FlexMargin), typeof(Vector4), typeof(View), null,
+                propertyChanged: SetInternalFlexMarginProperty, defaultValueCreator: GetInternalFlexMarginProperty);
+
+            CellIndexProperty = BindableProperty.Create(nameof(CellIndex), typeof(Vector2), typeof(View), null,
+                propertyChanged: SetInternalCellIndexProperty, defaultValueCreator: GetInternalCellIndexProperty);
+
+            RowSpanProperty = BindableProperty.Create(nameof(RowSpan), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalRowSpanProperty, defaultValueCreator: GetInternalRowSpanProperty);
+
+            ColumnSpanProperty = BindableProperty.Create(nameof(ColumnSpan), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalColumnSpanProperty, defaultValueCreator: GetInternalColumnSpanProperty);
+
+            CellHorizontalAlignmentProperty = BindableProperty.Create(nameof(CellHorizontalAlignment), typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left,
+                propertyChanged: SetInternalCellHorizontalAlignmentProperty, defaultValueCreator: GetInternalCellHorizontalAlignmentProperty);
+
+            CellVerticalAlignmentProperty = BindableProperty.Create(nameof(CellVerticalAlignment), typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top,
+                propertyChanged: SetInternalCellVerticalAlignmentProperty, defaultValueCreator: GetInternalCellVerticalAlignmentProperty);
+
+            WeightProperty = BindableProperty.Create(nameof(Weight), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalWeightProperty, defaultValueCreator: GetInternalWeightProperty);
+
+            LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null,
+                propertyChanged: SetInternalLeftFocusableViewProperty, defaultValueCreator: GetInternalLeftFocusableViewProperty);
+
+            RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null,
+                propertyChanged: SetInternalRightFocusableViewProperty, defaultValueCreator: GetInternalRightFocusableViewProperty);
+
+            UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null,
+                propertyChanged: SetInternalUpFocusableViewProperty, defaultValueCreator: GetInternalUpFocusableViewProperty);
+
+            DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null,
+                propertyChanged: SetInternalDownFocusableViewProperty, defaultValueCreator: GetInternalDownFocusableViewProperty);
+
+            ClockwiseFocusableViewProperty = BindableProperty.Create(nameof(View.ClockwiseFocusableView), typeof(View), typeof(View), null,
+                propertyChanged: SetInternalClockwiseFocusableViewProperty, defaultValueCreator: GetInternalClockwiseFocusableViewProperty);
+
+            CounterClockwiseFocusableViewProperty = BindableProperty.Create(nameof(View.CounterClockwiseFocusableView), typeof(View), typeof(View), null,
+                propertyChanged: SetInternalCounterClockwiseFocusableViewProperty, defaultValueCreator: GetInternalCounterClockwiseFocusableViewProperty);
+
+            FocusableProperty = BindableProperty.Create(nameof(Focusable), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalFocusableProperty, defaultValueCreator: GetInternalFocusableProperty);
+
+            FocusableChildrenProperty = BindableProperty.Create(nameof(FocusableChildren), typeof(bool), typeof(View), true,
+                propertyChanged: SetInternalFocusableChildrenProperty, defaultValueCreator: GetInternalFocusableChildrenProperty);
+
+            FocusableInTouchProperty = BindableProperty.Create(nameof(FocusableInTouch), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalFocusableInTouchProperty, defaultValueCreator: GetInternalFocusableInTouchProperty);
+
+            Size2DProperty = BindableProperty.Create(nameof(Size2D), typeof(Size2D), typeof(View), null,
+                propertyChanged: SetInternalSize2DProperty, defaultValueCreator: GetInternalSize2DProperty);
+
+            OpacityProperty = BindableProperty.Create(nameof(Opacity), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalOpacityProperty, defaultValueCreator: GetInternalOpacityProperty);
+
+            Position2DProperty = BindableProperty.Create(nameof(Position2D), typeof(Position2D), typeof(View), null,
+                propertyChanged: SetInternalPosition2DProperty, defaultValueCreator: GetInternalPosition2DProperty);
+
+            PositionUsesPivotPointProperty = BindableProperty.Create(nameof(PositionUsesPivotPoint), typeof(bool), typeof(View), true,
+                propertyChanged: SetInternalPositionUsesPivotPointProperty, defaultValueCreator: GetInternalPositionUsesPivotPointProperty);
+
+            SiblingOrderProperty = BindableProperty.Create(nameof(SiblingOrder), typeof(int), typeof(View), default(int),
+                propertyChanged: SetInternalSiblingOrderProperty, defaultValueCreator: GetInternalSiblingOrderProperty);
+
+            ParentOriginProperty = BindableProperty.Create(nameof(ParentOrigin), typeof(Position), typeof(View), null,
+                propertyChanged: SetInternalParentOriginProperty, defaultValueCreator: GetInternalParentOriginProperty);
+
+            PivotPointProperty = BindableProperty.Create(nameof(PivotPoint), typeof(Position), typeof(View), null,
+                propertyChanged: SetInternalPivotPointProperty, defaultValueCreator: GetInternalPivotPointProperty);
+
+            SizeWidthProperty = BindableProperty.Create(nameof(SizeWidth), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalSizeWidthProperty, defaultValueCreator: GetInternalSizeWidthProperty);
+
+            SizeHeightProperty = BindableProperty.Create(nameof(SizeHeight), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalSizeHeightProperty, defaultValueCreator: GetInternalSizeHeightProperty);
+
+            PositionProperty = BindableProperty.Create(nameof(Position), typeof(Position), typeof(View), null,
+                propertyChanged: SetInternalPositionProperty, defaultValueCreator: GetInternalPositionProperty);
+
+            PositionXProperty = BindableProperty.Create(nameof(PositionX), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalPositionXProperty, defaultValueCreator: GetInternalPositionXProperty);
+
+            PositionYProperty = BindableProperty.Create(nameof(PositionY), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalPositionYProperty, defaultValueCreator: GetInternalPositionYProperty);
+
+            PositionZProperty = BindableProperty.Create(nameof(PositionZ), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalPositionZProperty, defaultValueCreator: GetInternalPositionZProperty);
+
+            OrientationProperty = BindableProperty.Create(nameof(Orientation), typeof(Rotation), typeof(View), null,
+                propertyChanged: SetInternalOrientationProperty, defaultValueCreator: GetInternalOrientationProperty);
+
+            ScaleProperty = BindableProperty.Create(nameof(Scale), typeof(Vector3), typeof(View), null,
+                propertyChanged: SetInternalScaleProperty, defaultValueCreator: GetInternalScaleProperty);
+
+            ScaleXProperty = BindableProperty.Create(nameof(ScaleX), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalScaleXProperty, defaultValueCreator: GetInternalScaleXProperty);
+
+            ScaleYProperty = BindableProperty.Create(nameof(ScaleY), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalScaleYProperty, defaultValueCreator: GetInternalScaleYProperty);
+
+            ScaleZProperty = BindableProperty.Create(nameof(ScaleZ), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalScaleZProperty, defaultValueCreator: GetInternalScaleZProperty);
+
+            NameProperty = BindableProperty.Create(nameof(Name), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalNameProperty, defaultValueCreator: GetInternalNameProperty);
+
+            SensitiveProperty = BindableProperty.Create(nameof(Sensitive), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalSensitiveProperty, defaultValueCreator: GetInternalSensitiveProperty);
+
+            IsEnabledProperty = BindableProperty.Create(nameof(IsEnabled), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalIsEnabledProperty, defaultValueCreator: GetInternalIsEnabledProperty);
+
+            DispatchKeyEventsProperty = BindableProperty.Create(nameof(DispatchKeyEvents), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalDispatchKeyEventsProperty, defaultValueCreator: GetInternalDispatchKeyEventsProperty);
+
+            LeaveRequiredProperty = BindableProperty.Create(nameof(LeaveRequired), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalLeaveRequiredProperty, defaultValueCreator: GetInternalLeaveRequiredProperty);
+
+            InheritOrientationProperty = BindableProperty.Create(nameof(InheritOrientation), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalInheritOrientationProperty, defaultValueCreator: GetInternalInheritOrientationProperty);
+
+            InheritScaleProperty = BindableProperty.Create(nameof(InheritScale), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalInheritScaleProperty, defaultValueCreator: GetInternalInheritScaleProperty);
+
+            DrawModeProperty = BindableProperty.Create(nameof(DrawMode), typeof(DrawModeType), typeof(View), DrawModeType.Normal,
+                propertyChanged: SetInternalDrawModeProperty, defaultValueCreator: GetInternalDrawModeProperty);
+
+            SizeModeFactorProperty = BindableProperty.Create(nameof(SizeModeFactor), typeof(Vector3), typeof(View), null,
+                propertyChanged: SetInternalSizeModeFactorProperty, defaultValueCreator: GetInternalSizeModeFactorProperty);
+
+            WidthResizePolicyProperty = BindableProperty.Create(nameof(WidthResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed,
+                propertyChanged: SetInternalWidthResizePolicyProperty, defaultValueCreator: GetInternalWidthResizePolicyProperty);
+
+            HeightResizePolicyProperty = BindableProperty.Create(nameof(HeightResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed,
+                propertyChanged: SetInternalHeightResizePolicyProperty, defaultValueCreator: GetInternalHeightResizePolicyProperty);
+
+            SizeScalePolicyProperty = BindableProperty.Create(nameof(SizeScalePolicy), typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet,
+                propertyChanged: SetInternalSizeScalePolicyProperty, defaultValueCreator: GetInternalSizeScalePolicyProperty);
+
+            WidthForHeightProperty = BindableProperty.Create(nameof(WidthForHeight), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalWidthForHeightProperty, defaultValueCreator: GetInternalWidthForHeightProperty);
+
+            HeightForWidthProperty = BindableProperty.Create(nameof(HeightForWidth), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalHeightForWidthProperty, defaultValueCreator: GetInternalHeightForWidthProperty);
+
+            PaddingProperty = BindableProperty.Create(nameof(Padding), typeof(Extents), typeof(View), null,
+                propertyChanged: SetInternalPaddingProperty, defaultValueCreator: GetInternalPaddingProperty);
+
+            SizeProperty = BindableProperty.Create(nameof(Size), typeof(Size), typeof(View), null,
+                propertyChanged: SetInternalSizeProperty, defaultValueCreator: GetInternalSizeProperty);
+
+            MinimumSizeProperty = BindableProperty.Create(nameof(MinimumSize), typeof(Size2D), typeof(View), null,
+                propertyChanged: SetInternalMinimumSizeProperty, defaultValueCreator: GetInternalMinimumSizeProperty);
+
+            MaximumSizeProperty = BindableProperty.Create(nameof(MaximumSize), typeof(Size2D), typeof(View), null,
+                propertyChanged: SetInternalMaximumSizeProperty, defaultValueCreator: GetInternalMaximumSizeProperty);
+
+            InheritPositionProperty = BindableProperty.Create(nameof(InheritPosition), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalInheritPositionProperty, defaultValueCreator: GetInternalInheritPositionProperty);
+
+            ClippingModeProperty = BindableProperty.Create(nameof(ClippingMode), typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled,
+                propertyChanged: SetInternalClippingModeProperty, defaultValueCreator: GetInternalClippingModeProperty);
+
+            InheritLayoutDirectionProperty = BindableProperty.Create(nameof(InheritLayoutDirection), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalInheritLayoutDirectionProperty, defaultValueCreator: GetInternalInheritLayoutDirectionProperty);
+
+            LayoutDirectionProperty = BindableProperty.Create(nameof(LayoutDirection), typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR,
+                propertyChanged: SetInternalLayoutDirectionProperty, defaultValueCreator: GetInternalLayoutDirectionProperty);
+
+            MarginProperty = BindableProperty.Create(nameof(Margin), typeof(Extents), typeof(View), null,
+                propertyChanged: SetInternalMarginProperty, defaultValueCreator: GetInternalMarginProperty);
+
+            UpdateAreaHintProperty = BindableProperty.Create(nameof(UpdateAreaHint), typeof(Vector4), typeof(View), null,
+                propertyChanged: SetInternalUpdateAreaHintProperty, defaultValueCreator: GetInternalUpdateAreaHintProperty);
+
+            ImageShadowProperty = BindableProperty.Create(nameof(ImageShadow), typeof(ImageShadow), typeof(View), null,
+                propertyChanged: SetInternalImageShadowProperty, defaultValueCreator: GetInternalImageShadowProperty);
+
+            BoxShadowProperty = BindableProperty.Create(nameof(BoxShadow), typeof(Shadow), typeof(View), null,
+                propertyChanged: SetInternalBoxShadowProperty, defaultValueCreator: GetInternalBoxShadowProperty);
+
+            CornerRadiusProperty = BindableProperty.Create(nameof(CornerRadius), typeof(Vector4), typeof(View), null,
+                propertyChanged: SetInternalCornerRadiusProperty, defaultValueCreator: GetInternalCornerRadiusProperty);
+
+            CornerRadiusPolicyProperty = BindableProperty.Create(nameof(CornerRadiusPolicy), typeof(VisualTransformPolicyType), typeof(View), VisualTransformPolicyType.Absolute,
+                propertyChanged: SetInternalCornerRadiusPolicyProperty, defaultValueCreator: GetInternalCornerRadiusPolicyProperty);
+
+            BorderlineWidthProperty = BindableProperty.Create(nameof(BorderlineWidth), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalBorderlineWidthProperty, defaultValueCreator: GetInternalBorderlineWidthProperty);
+
+            BorderlineColorProperty = BindableProperty.Create(nameof(BorderlineColor), typeof(Color), typeof(View), null,
+                propertyChanged: SetInternalBorderlineColorProperty, defaultValueCreator: GetInternalBorderlineColorProperty);
+
+            BorderlineColorSelectorProperty = BindableProperty.Create(nameof(BorderlineColorSelector), typeof(Selector<Color>), typeof(View), null,
+                propertyChanged: SetInternalBorderlineColorSelectorProperty, defaultValueCreator: GetInternalBorderlineColorSelectorProperty);
+
+            BorderlineOffsetProperty = BindableProperty.Create(nameof(BorderlineOffset), typeof(float), typeof(View), default(float),
+                propertyChanged: SetInternalBorderlineOffsetProperty, defaultValueCreator: GetInternalBorderlineOffsetProperty);
+
+            EnableControlStateProperty = BindableProperty.Create(nameof(EnableControlState), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalEnableControlStateProperty, defaultValueCreator: GetInternalEnableControlStateProperty);
+
+            ThemeChangeSensitiveProperty = BindableProperty.Create(nameof(ThemeChangeSensitive), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalThemeChangeSensitiveProperty, defaultValueCreator: GetInternalThemeChangeSensitiveProperty);
+
+            AccessibilityNameProperty = BindableProperty.Create(nameof(AccessibilityName), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalAccessibilityNameProperty, defaultValueCreator: GetInternalAccessibilityNameProperty);
+
+            AccessibilityDescriptionProperty = BindableProperty.Create(nameof(AccessibilityDescription), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalAccessibilityDescriptionProperty, defaultValueCreator: GetInternalAccessibilityDescriptionProperty);
+
+            AccessibilityTranslationDomainProperty = BindableProperty.Create(nameof(AccessibilityTranslationDomain), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalAccessibilityTranslationDomainProperty, defaultValueCreator: GetInternalAccessibilityTranslationDomainProperty);
+
+            AccessibilityRoleProperty = BindableProperty.Create(nameof(AccessibilityRole), typeof(Role), typeof(View), default(Role),
+                propertyChanged: SetInternalAccessibilityRoleProperty, defaultValueCreator: GetInternalAccessibilityRoleProperty);
+
+            AccessibilityHighlightableProperty = BindableProperty.Create(nameof(AccessibilityHighlightable), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalAccessibilityHighlightableProperty, defaultValueCreator: GetInternalAccessibilityHighlightableProperty);
+
+            AccessibilityHiddenProperty = BindableProperty.Create(nameof(AccessibilityHidden), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalAccessibilityHiddenProperty, defaultValueCreator: GetInternalAccessibilityHiddenProperty);
+
+            ExcludeLayoutingProperty = BindableProperty.Create(nameof(ExcludeLayouting), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalExcludeLayoutingProperty, defaultValueCreator: GetInternalExcludeLayoutingProperty);
+
+            TooltipTextProperty = BindableProperty.Create(nameof(TooltipText), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalTooltipTextProperty, defaultValueCreator: GetInternalTooltipTextProperty);
+
+            PositionUsesAnchorPointProperty = BindableProperty.Create(nameof(PositionUsesAnchorPoint), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalPositionUsesAnchorPointProperty, defaultValueCreator: GetInternalPositionUsesAnchorPointProperty);
+
+            AnchorPointProperty = BindableProperty.Create(nameof(AnchorPoint), typeof(Tizen.NUI.Position), typeof(View), null,
+                propertyChanged: SetInternalAnchorPointProperty, defaultValueCreator: GetInternalAnchorPointProperty);
+
+            WidthSpecificationProperty = BindableProperty.Create(nameof(WidthSpecification), typeof(int), typeof(View), 0,
+                propertyChanged: SetInternalWidthSpecificationProperty, defaultValueCreator: GetInternalWidthSpecificationProperty);
+
+            HeightSpecificationProperty = BindableProperty.Create(nameof(HeightSpecification), typeof(int), typeof(View), 0,
+                propertyChanged: SetInternalHeightSpecificationProperty, defaultValueCreator: GetInternalHeightSpecificationProperty);
+
+            LayoutTransitionProperty = BindableProperty.Create(nameof(LayoutTransition), typeof(Tizen.NUI.LayoutTransition), typeof(View), null,
+                propertyChanged: SetInternalLayoutTransitionProperty, defaultValueCreator: GetInternalLayoutTransitionProperty);
+
+            PaddingEXProperty = BindableProperty.Create(nameof(PaddingEX), typeof(Tizen.NUI.Extents), typeof(View), null,
+                propertyChanged: SetInternalPaddingEXProperty, defaultValueCreator: GetInternalPaddingEXProperty);
+
+            LayoutProperty = BindableProperty.Create(nameof(Layout), typeof(Tizen.NUI.LayoutItem), typeof(View), null,
+                propertyChanged: SetInternalLayoutProperty, defaultValueCreator: GetInternalLayoutProperty);
+
+            BackgroundImageSynchronosLoadingProperty = BindableProperty.Create(nameof(BackgroundImageSynchronosLoading), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalBackgroundImageSynchronosLoadingProperty, defaultValueCreator: GetInternalBackgroundImageSynchronosLoadingProperty);
+
+            BackgroundImageSynchronousLoadingProperty = BindableProperty.Create(nameof(BackgroundImageSynchronousLoading), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalBackgroundImageSynchronousLoadingProperty, defaultValueCreator: GetInternalBackgroundImageSynchronousLoadingProperty);
+
+            EnableControlStatePropagationProperty = BindableProperty.Create(nameof(EnableControlStatePropagation), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalEnableControlStatePropagationProperty, defaultValueCreator: GetInternalEnableControlStatePropagationProperty);
+
+            PropagatableControlStatesProperty = BindableProperty.Create(nameof(PropagatableControlStates), typeof(ControlState), typeof(View), ControlState.All,
+                propertyChanged: SetInternalPropagatableControlStatesProperty, defaultValueCreator: GetInternalPropagatableControlStatesProperty);
+
+            GrabTouchAfterLeaveProperty = BindableProperty.Create(nameof(GrabTouchAfterLeave), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalGrabTouchAfterLeaveProperty, defaultValueCreator: GetInternalGrabTouchAfterLeaveProperty);
+
+            AllowOnlyOwnTouchProperty = BindableProperty.Create(nameof(AllowOnlyOwnTouch), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalAllowOnlyOwnTouchProperty, defaultValueCreator: GetInternalAllowOnlyOwnTouchProperty);
+
+            BlendEquationProperty = BindableProperty.Create(nameof(BlendEquation), typeof(BlendEquationType), typeof(View), default(BlendEquationType),
+                propertyChanged: SetInternalBlendEquationProperty, defaultValueCreator: GetInternalBlendEquationProperty);
+
+            TransitionOptionsProperty = BindableProperty.Create(nameof(TransitionOptions), typeof(TransitionOptions), typeof(View), default(TransitionOptions),
+                propertyChanged: SetInternalTransitionOptionsProperty, defaultValueCreator: GetInternalTransitionOptionsProperty);
+
+            AutomationIdProperty = BindableProperty.Create(nameof(AutomationId), typeof(string), typeof(View), string.Empty,
+                propertyChanged: SetInternalAutomationIdProperty, defaultValueCreator: GetInternalAutomationIdProperty);
+
+            TouchAreaOffsetProperty = BindableProperty.Create(nameof(TouchAreaOffset), typeof(Offset), typeof(View), default(Offset),
+                propertyChanged: SetInternalTouchAreaOffsetProperty, defaultValueCreator: GetInternalTouchAreaOffsetProperty);
+
+            DispatchTouchMotionProperty = BindableProperty.Create(nameof(DispatchTouchMotion), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalDispatchTouchMotionProperty, defaultValueCreator: GetInternalDispatchTouchMotionProperty);
+
+            DispatchHoverMotionProperty = BindableProperty.Create(nameof(DispatchHoverMotion), typeof(bool), typeof(View), false,
+                propertyChanged: SetInternalDispatchHoverMotionProperty, defaultValueCreator: GetInternalDispatchHoverMotionProperty);
+
+            RegisterPropertyGroup(PositionProperty, positionPropertyGroup);
+            RegisterPropertyGroup(Position2DProperty, positionPropertyGroup);
+            RegisterPropertyGroup(PositionXProperty, positionPropertyGroup);
+            RegisterPropertyGroup(PositionYProperty, positionPropertyGroup);
+
+            RegisterPropertyGroup(SizeProperty, sizePropertyGroup);
+            RegisterPropertyGroup(Size2DProperty, sizePropertyGroup);
+            RegisterPropertyGroup(SizeWidthProperty, sizePropertyGroup);
+            RegisterPropertyGroup(SizeHeightProperty, sizePropertyGroup);
+
+            RegisterPropertyGroup(ScaleProperty, scalePropertyGroup);
+            RegisterPropertyGroup(ScaleXProperty, scalePropertyGroup);
+            RegisterPropertyGroup(ScaleYProperty, scalePropertyGroup);
+            RegisterPropertyGroup(ScaleZProperty, scalePropertyGroup);
+        }
+#else
+        // keep readonly for BindableProperty
+#endif
 
         /// <summary>
         /// Gets View's Size2D set by user.
@@ -3101,40 +3498,6 @@ namespace Tizen.NUI.BaseComponents
             return new Size2D((int)userSizeWidth, (int)userSizeHeight);
         }
 
-#if REMOVE_READONLY
-        internal static void CreateBindableProperties()
-        {
-            _ = GetBackgroundColorProperty();
-            _ = GetColorProperty();
-            _ = GetColorRedProperty();
-            _ = GetColorGreenProperty();
-            _ = GetColorBlueProperty();
-            _ = GetCellIndexProperty();
-            _ = GetSize2DProperty();
-            _ = GetPosition2DProperty();
-            _ = GetParentOriginProperty();
-            _ = GetPivotPointProperty();
-            _ = GetSizeWidthProperty();
-            _ = GetSizeHeightProperty();
-            _ = GetPositionProperty();
-            _ = GetPositionXProperty();
-            _ = GetPositionYProperty();
-            _ = GetPositionZProperty();
-            _ = GetScaleProperty();
-            _ = GetScaleXProperty();
-            _ = GetScaleYProperty();
-            _ = GetScaleZProperty();
-            _ = GetNameProperty();
-            _ = GetSizeModeFactorProperty();
-            _ = GetPaddingProperty();
-            _ = GetSizeProperty();
-            _ = GetMinimumSizeProperty();
-            _ = GetMaximumSizeProperty();
-            _ = GetMarginProperty();
-            _ = GetAnchorPointProperty();
-        }
-#endif
-
         private void SetBackgroundImage(string value)
         {
             if (string.IsNullOrEmpty(value))
index a9814e2..0b082de 100755 (executable)
@@ -1042,7 +1042,7 @@ namespace Tizen.NUI.BaseComponents
 
         private void OnResourcesLoaded(IntPtr view)
         {
-            if(!CheckResourceReady())
+            if (!CheckResourceReady())
             {
                 return;
             }
@@ -1376,11 +1376,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (Offset)GetValue(TouchAreaOffsetProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (Offset)GetValue(TouchAreaOffsetProperty);
+                }
+                else
+                {
+                    return (Offset)GetInternalTouchAreaOffsetProperty(this);
+                }
             }
             set
             {
-                SetValue(TouchAreaOffsetProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(TouchAreaOffsetProperty, value);
+                }
+                else
+                {
+                    SetInternalTouchAreaOffsetProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1412,11 +1426,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(DispatchKeyEventsProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(DispatchKeyEventsProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalDispatchKeyEventsProperty(this);
+                }
             }
             set
             {
-                SetValue(DispatchKeyEventsProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(DispatchKeyEventsProperty, value);
+                }
+                else
+                {
+                    SetInternalDispatchKeyEventsProperty(this, null, value);
+                }
                 NotifyPropertyChanged();
             }
         }
@@ -1747,11 +1775,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(DispatchTouchMotionProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(DispatchTouchMotionProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalDispatchTouchMotionProperty(this);
+                }
             }
             set
             {
-                SetValue(DispatchTouchMotionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(DispatchTouchMotionProperty, value);
+                }
+                else
+                {
+                    SetInternalDispatchTouchMotionProperty(this, null, value);
+                }
             }
         }
 
@@ -1777,11 +1819,25 @@ namespace Tizen.NUI.BaseComponents
         {
             get
             {
-                return (bool)GetValue(DispatchHoverMotionProperty);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    return (bool)GetValue(DispatchHoverMotionProperty);
+                }
+                else
+                {
+                    return (bool)GetInternalDispatchHoverMotionProperty(this);
+                }
             }
             set
             {
-                SetValue(DispatchHoverMotionProperty, value);
+                if (NUIApplication.IsUsingXaml)
+                {
+                    SetValue(DispatchHoverMotionProperty, value);
+                }
+                else
+                {
+                    SetInternalDispatchHoverMotionProperty(this, null, value);
+                }
             }
         }