diff options
Diffstat (limited to 'docs/Xamarin.Forms.Core/Xamarin.Forms/BindingMode.xml')
-rw-r--r-- | docs/Xamarin.Forms.Core/Xamarin.Forms/BindingMode.xml | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/docs/Xamarin.Forms.Core/Xamarin.Forms/BindingMode.xml b/docs/Xamarin.Forms.Core/Xamarin.Forms/BindingMode.xml new file mode 100644 index 00000000..15671f08 --- /dev/null +++ b/docs/Xamarin.Forms.Core/Xamarin.Forms/BindingMode.xml @@ -0,0 +1,149 @@ +<Type Name="BindingMode" FullName="Xamarin.Forms.BindingMode"> + <TypeSignature Language="C#" Value="public enum BindingMode" /> + <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed BindingMode extends System.Enum" /> + <AssemblyInfo> + <AssemblyName>Xamarin.Forms.Core</AssemblyName> + <AssemblyVersion>1.0.0.0</AssemblyVersion> + <AssemblyVersion>1.1.0.0</AssemblyVersion> + <AssemblyVersion>1.2.0.0</AssemblyVersion> + <AssemblyVersion>1.3.0.0</AssemblyVersion> + <AssemblyVersion>1.4.0.0</AssemblyVersion> + <AssemblyVersion>1.5.0.0</AssemblyVersion> + <AssemblyVersion>2.0.0.0</AssemblyVersion> + </AssemblyInfo> + <Base> + <BaseTypeName>System.Enum</BaseTypeName> + </Base> + <Docs> + <summary>The direction of changes propagation for bindings.</summary> + <remarks> + <para>The following examples shows some BindingMode use cases.</para> + <example> + <code lang="C#"><![CDATA[ +public class PersonViewModel +{ + public string Name { get; set; } + public string Company { get; set; } +} + +Label label; +PersonViewModel viewmodel; + +//BindingMode.OneWay +label = new Label (); +label.BindingContext = viewmodel = new PersonViewModel (); +label.SetBinding<PersonViewModel> (Label.TextProperty, vm => vm.Name, mode: BindingMode.OneWay); + +viewmodel.Name = "John Doe"; +Debug.WriteLine (label.Text); //prints "John Doe" +label.Text = "Foo"; +Debug.WriteLine (viewmodel.Name); //prints "John Doe" + + +//BindingMode.TwoWay +label = new Label (); +label.BindingContext = viewmodel = new PersonViewModel (); +label.SetBinding<PersonViewModel> (Label.TextProperty, vm => vm.Name, mode: BindingMode.TwoWay); + +viewmodel.Name = "John Doe"; +Debug.WriteLine (label.Text); //prints "John Doe" +label.Text = "Foo"; +Debug.WriteLine (viewmodel.Name); //prints "Foo" + + +//BindingMode.OneWayToSource +label = new Label (); +label.BindingContext = viewmodel = new PersonViewModel (); +label.SetBinding<PersonViewModel> (Label.TextProperty, vm => vm.Name, mode: BindingMode.OneWayToSource); + +viewmodel.Name = "John Doe"; +Debug.WriteLine (label.Text); //prints "" +label.Text = "Foo"; +Debug.WriteLine (viewmodel.Name); //prints "Foo" + ]]></code> + </example> + </remarks> + </Docs> + <Members> + <Member MemberName="Default"> + <MemberSignature Language="C#" Value="Default" /> + <MemberSignature Language="ILAsm" Value=".field public static literal valuetype Xamarin.Forms.BindingMode Default = int32(0)" /> + <MemberType>Field</MemberType> + <AssemblyInfo> + <AssemblyVersion>1.0.0.0</AssemblyVersion> + <AssemblyVersion>1.1.0.0</AssemblyVersion> + <AssemblyVersion>1.2.0.0</AssemblyVersion> + <AssemblyVersion>1.3.0.0</AssemblyVersion> + <AssemblyVersion>1.4.0.0</AssemblyVersion> + <AssemblyVersion>1.5.0.0</AssemblyVersion> + <AssemblyVersion>2.0.0.0</AssemblyVersion> + </AssemblyInfo> + <ReturnValue> + <ReturnType>Xamarin.Forms.BindingMode</ReturnType> + </ReturnValue> + <Docs> + <summary>When used in Bindings, indicates that the Binding should use the <see cref="P:Xamarin.Forms.BindableProperty.DefaultBindingMode" />. When used in BindableProperty declaration, defaults to BindingMode.OneWay.</summary> + </Docs> + </Member> + <Member MemberName="OneWay"> + <MemberSignature Language="C#" Value="OneWay" /> + <MemberSignature Language="ILAsm" Value=".field public static literal valuetype Xamarin.Forms.BindingMode OneWay = int32(2)" /> + <MemberType>Field</MemberType> + <AssemblyInfo> + <AssemblyVersion>1.0.0.0</AssemblyVersion> + <AssemblyVersion>1.1.0.0</AssemblyVersion> + <AssemblyVersion>1.2.0.0</AssemblyVersion> + <AssemblyVersion>1.3.0.0</AssemblyVersion> + <AssemblyVersion>1.4.0.0</AssemblyVersion> + <AssemblyVersion>1.5.0.0</AssemblyVersion> + <AssemblyVersion>2.0.0.0</AssemblyVersion> + </AssemblyInfo> + <ReturnValue> + <ReturnType>Xamarin.Forms.BindingMode</ReturnType> + </ReturnValue> + <Docs> + <summary>Indicates that the binding should only propagates changes from source (usually the View Model) to target (the BindableObject). This is the default mode for most BindableProperty values.</summary> + </Docs> + </Member> + <Member MemberName="OneWayToSource"> + <MemberSignature Language="C#" Value="OneWayToSource" /> + <MemberSignature Language="ILAsm" Value=".field public static literal valuetype Xamarin.Forms.BindingMode OneWayToSource = int32(3)" /> + <MemberType>Field</MemberType> + <AssemblyInfo> + <AssemblyVersion>1.0.0.0</AssemblyVersion> + <AssemblyVersion>1.1.0.0</AssemblyVersion> + <AssemblyVersion>1.2.0.0</AssemblyVersion> + <AssemblyVersion>1.3.0.0</AssemblyVersion> + <AssemblyVersion>1.4.0.0</AssemblyVersion> + <AssemblyVersion>1.5.0.0</AssemblyVersion> + <AssemblyVersion>2.0.0.0</AssemblyVersion> + </AssemblyInfo> + <ReturnValue> + <ReturnType>Xamarin.Forms.BindingMode</ReturnType> + </ReturnValue> + <Docs> + <summary>Indicates that the binding should only propagates changes from target (the BindableObject) to source (usually the View Model). This is mainly used for read-only BindableProperty values.</summary> + </Docs> + </Member> + <Member MemberName="TwoWay"> + <MemberSignature Language="C#" Value="TwoWay" /> + <MemberSignature Language="ILAsm" Value=".field public static literal valuetype Xamarin.Forms.BindingMode TwoWay = int32(1)" /> + <MemberType>Field</MemberType> + <AssemblyInfo> + <AssemblyVersion>1.0.0.0</AssemblyVersion> + <AssemblyVersion>1.1.0.0</AssemblyVersion> + <AssemblyVersion>1.2.0.0</AssemblyVersion> + <AssemblyVersion>1.3.0.0</AssemblyVersion> + <AssemblyVersion>1.4.0.0</AssemblyVersion> + <AssemblyVersion>1.5.0.0</AssemblyVersion> + <AssemblyVersion>2.0.0.0</AssemblyVersion> + </AssemblyInfo> + <ReturnValue> + <ReturnType>Xamarin.Forms.BindingMode</ReturnType> + </ReturnValue> + <Docs> + <summary>Indicates that the binding should propagates changes from source (usually the View Model) to target (the BindableObject) in both directions.</summary> + </Docs> + </Member> + </Members> +</Type> |