diff --git a/LiveXAMLApp/.gitignore b/LiveXAMLApp/.gitignore new file mode 100644 index 0000000..7d5c14c --- /dev/null +++ b/LiveXAMLApp/.gitignore @@ -0,0 +1,39 @@ +#Autosave files +*~ + +#build +[Oo]bj/ +[Bb]in/ +TestResults/ + +# globs +Makefile.in +*.DS_Store +*.sln.cache +*.suo +*.cache +*.pidb +*.userprefs +*.usertasks +config.log +config.make +config.status +aclocal.m4 +install-sh +autom4te.cache/ +*.user +*.tar.gz +tarballs/ +test-results/ +Thumbs.db + +#Mac bundle stuff +*.dmg +*.app + +#resharper +*_Resharper.* +*.Resharper + +#dotCover +*.dotCover diff --git a/LiveXAMLApp/Droid/Assets/AboutAssets.txt b/LiveXAMLApp/Droid/Assets/AboutAssets.txt new file mode 100644 index 0000000..a9b0638 --- /dev/null +++ b/LiveXAMLApp/Droid/Assets/AboutAssets.txt @@ -0,0 +1,19 @@ +Any raw assets you want to be deployed with your application can be placed in +this directory (and child directories) and given a Build Action of "AndroidAsset". + +These files will be deployed with your package and will be accessible using Android's +AssetManager, like this: + +public class ReadAsset : Activity +{ + protected override void OnCreate (Bundle bundle) + { + base.OnCreate (bundle); + + InputStream input = Assets.Open ("my_asset.txt"); + } +} + +Additionally, some Android functions will automatically load asset files: + +Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); diff --git a/LiveXAMLApp/Droid/Dependencies/WebSocketClient.cs b/LiveXAMLApp/Droid/Dependencies/WebSocketClient.cs new file mode 100644 index 0000000..3d1bcc8 --- /dev/null +++ b/LiveXAMLApp/Droid/Dependencies/WebSocketClient.cs @@ -0,0 +1,62 @@ +using System; +using WebSocket4Net; +using LiveXAML.Droid; +using System.Threading.Tasks; +using System.Threading; + +[assembly: Xamarin.Forms.Dependency (typeof (WebSocketClient))] +namespace LiveXAML.Droid +{ + public class WebSocketClient:IWebSocketClient + { + WebSocket websocket; + Task timer; + bool connected = false; + + public WebSocketClient () + { + } + + public override void Open (string wslocalhost){ + connected = false; + websocket = new WebSocket(wslocalhost,"",(WebSocketVersion) (-1)); + websocket.Opened += delegate(object sender, EventArgs e) { + connected = true; + if (Opened!=null){ + Opened(); + } + }; + websocket.MessageReceived += delegate(object sender, MessageReceivedEventArgs e) { + if (MessageReceived!=null){ + MessageReceived(e.Message); + } + }; + websocket.Error += delegate(object sender, SuperSocket.ClientEngine.ErrorEventArgs e) { + if (!connected && websocket!=null){ + connected = true; + websocket.Close(); + if (Error!=null){ + Error(e.Exception); + } + } + }; + timer = new Task (async delegate() { + await Task.Delay(2000); + if (!connected && websocket!=null){ + connected = true; + websocket.Close(); + if (Error!=null){ + Error(new Exception("Connection failed")); + } + } + }); + timer.Start (); + websocket.Open (); + } + + public override void Send (string message){ + websocket.Send(message); + } + } +} + diff --git a/LiveXAMLApp/Droid/Dependencies/XamlDependency.cs b/LiveXAMLApp/Droid/Dependencies/XamlDependency.cs new file mode 100644 index 0000000..b6b4c18 --- /dev/null +++ b/LiveXAMLApp/Droid/Dependencies/XamlDependency.cs @@ -0,0 +1,44 @@ +using System; +using System.Linq; +using System.Reflection; +using Xamarin.Forms; +using LiveXAML.Droid; + +[assembly: Xamarin.Forms.Dependency (typeof (XamlDependency))] +namespace LiveXAML.Droid +{ + public class XamlDependency:IXamlDependency + { + static Func loadXaml; + public XamlDependency () + { + // This is the current situation, where the LoadFromXaml is the only non-public static method. + var genericMethod = typeof (Xamarin.Forms.Xaml.Extensions) + .GetMethods (BindingFlags.Static | BindingFlags.NonPublic).FirstOrDefault (); + + // If we didn't find it, it may be because the extension method may be public now :) + if (genericMethod == null) + genericMethod = typeof (Xamarin.Forms.Xaml.Extensions) + .GetMethods (BindingFlags.Static | BindingFlags.Public) + .FirstOrDefault (m => m.GetParameters().Last().ParameterType == typeof(string)); + + if (genericMethod == null){ + loadXaml = (view, xaml) => { throw new NotSupportedException("Xamarin.Forms implementation of XAML loading not found. Please update the Dynamic nuget package."); }; + } + else { + genericMethod = genericMethod.MakeGenericMethod(typeof(BindableObject)); + loadXaml = (view, xaml) => (BindableObject)genericMethod.Invoke (null, new object[] { view, xaml }); + } + } + + #region IXamlDependency implementation + + public void LoadFromXaml (TView view, string xaml) where TView : Xamarin.Forms.BindableObject + { + loadXaml (view, xaml); + } + + #endregion + } +} + diff --git a/LiveXAMLApp/Droid/LiveXAML.Droid.csproj b/LiveXAMLApp/Droid/LiveXAML.Droid.csproj new file mode 100644 index 0000000..aedc343 --- /dev/null +++ b/LiveXAMLApp/Droid/LiveXAML.Droid.csproj @@ -0,0 +1,121 @@ + + + + Debug + AnyCPU + {EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + {0020E7C2-977D-4CC6-BDFB-27381FE45E37} + Library + LiveXAML.Droid + Assets + Resources + Properties\AndroidManifest.xml + Resource + Resources\Resource.designer.cs + True + True + LiveXAML.Droid + v6.0 + 960dba32995dcd2801d5b7c356b6307fe689f67d + + + true + full + false + bin\Debug + DEBUG; + prompt + 4 + None + false + + + full + true + bin\Release + prompt + 4 + false + false + + + + + + + + ..\packages\Xamarin.Insights.1.10.6\lib\MonoAndroid10\Xamarin.Insights.dll + + + ..\packages\Xamarin.Android.Support.v4.21.0.3.0\lib\MonoAndroid10\Xamarin.Android.Support.v4.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10\FormsViewGroup.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10\Xamarin.Forms.Core.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\MonoAndroid10\Xamarin.Forms.Xaml.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\monoandroid\System.Net.Http.Primitives.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\monoandroid\System.Net.Http.Extensions.dll + + + + ..\packages\rda.SocketsForPCL.1.2.2\lib\MonoAndroid10\Sockets.Plugin.dll + + + ..\packages\rda.SocketsForPCL.1.2.2\lib\MonoAndroid10\Sockets.Plugin.Abstractions.dll + + + ..\packages\modernhttpclient.2.4.2\lib\MonoAndroid\ModernHttpClient.dll + + + ..\packages\modernhttpclient.2.4.2\lib\MonoAndroid\OkHttp.dll + + + ..\packages\WebSocket4Net.0.14.1\lib\monoandroid23\WebSocket4Net.dll + + + + + {5868E89D-E592-492C-9004-D9FDCF258144} + LiveXAML + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/Droid/MainActivity.cs b/LiveXAMLApp/Droid/MainActivity.cs new file mode 100644 index 0000000..70151fc --- /dev/null +++ b/LiveXAMLApp/Droid/MainActivity.cs @@ -0,0 +1,29 @@ +using System; + +using Android.App; +using Android.Content; +using Android.Content.PM; +using Android.Runtime; +using Android.Views; +using Android.Widget; +using Android.OS; + +namespace LiveXAML.Droid +{ + + [Activity (Label = "LiveXAML.Droid", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] + public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity + { + public static ClipboardManager AndroidClipboardManager { get; private set; } + + protected override void OnCreate (Bundle bundle) + { + base.OnCreate (bundle); + + global::Xamarin.Forms.Forms.Init (this, bundle); + + LoadApplication (new App ()); + } + } +} + diff --git a/LiveXAMLApp/Droid/Properties/AndroidManifest.xml b/LiveXAMLApp/Droid/Properties/AndroidManifest.xml new file mode 100644 index 0000000..037745a --- /dev/null +++ b/LiveXAMLApp/Droid/Properties/AndroidManifest.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/LiveXAMLApp/Droid/Properties/AssemblyInfo.cs b/LiveXAMLApp/Droid/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8457617 --- /dev/null +++ b/LiveXAMLApp/Droid/Properties/AssemblyInfo.cs @@ -0,0 +1,28 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using Android.App; + +// Information about this assembly is defined by the following attributes. +// Change them to the values specific to your project. + +[assembly: AssemblyTitle ("LiveXAML.Droid")] +[assembly: AssemblyDescription ("")] +[assembly: AssemblyConfiguration ("")] +[assembly: AssemblyCompany ("")] +[assembly: AssemblyProduct ("")] +[assembly: AssemblyCopyright ("cristianosantos")] +[assembly: AssemblyTrademark ("")] +[assembly: AssemblyCulture ("")] + +// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". +// The form "{Major}.{Minor}.*" will automatically update the build and revision, +// and "{Major}.{Minor}.{Build}.*" will update just the revision. + +[assembly: AssemblyVersion ("1.0.0")] + +// The following attributes are used to specify the signing key for the assembly, +// if desired. See the Mono documentation for more information about signing. + +//[assembly: AssemblyDelaySign(false)] +//[assembly: AssemblyKeyFile("")] + diff --git a/LiveXAMLApp/Droid/Resources/AboutResources.txt b/LiveXAMLApp/Droid/Resources/AboutResources.txt new file mode 100644 index 0000000..10f52d4 --- /dev/null +++ b/LiveXAMLApp/Droid/Resources/AboutResources.txt @@ -0,0 +1,44 @@ +Images, layout descriptions, binary blobs and string dictionaries can be included +in your application as resource files. Various Android APIs are designed to +operate on the resource IDs instead of dealing with images, strings or binary blobs +directly. + +For example, a sample Android app that contains a user interface layout (main.axml), +an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png) +would keep its resources in the "Resources" directory of the application: + +Resources/ + drawable/ + icon.png + + layout/ + main.axml + + values/ + strings.xml + +In order to get the build system to recognize Android resources, set the build action to +"AndroidResource". The native Android APIs do not operate directly with filenames, but +instead operate on resource IDs. When you compile an Android application that uses resources, +the build system will package the resources for distribution and generate a class called "R" +(this is an Android convention) that contains the tokens for each one of the resources +included. For example, for the above Resources layout, this is what the R class would expose: + +public class R { + public class drawable { + public const int icon = 0x123; + } + + public class layout { + public const int main = 0x456; + } + + public class strings { + public const int first_string = 0xabc; + public const int second_string = 0xbcd; + } +} + +You would then use R.drawable.icon to reference the drawable/icon.png file, or R.layout.main +to reference the layout/main.axml file, or R.strings.first_string to reference the first +string in the dictionary file values/strings.xml. diff --git a/LiveXAMLApp/Droid/Resources/Resource.designer.cs b/LiveXAMLApp/Droid/Resources/Resource.designer.cs new file mode 100644 index 0000000..ed28cb0 --- /dev/null +++ b/LiveXAMLApp/Droid/Resources/Resource.designer.cs @@ -0,0 +1,78 @@ +#pragma warning disable 1591 +// ------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Mono Runtime Version: 4.0.30319.17020 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +// ------------------------------------------------------------------------------ + +[assembly: Android.Runtime.ResourceDesignerAttribute("LiveXAML.Droid.Resource", IsApplication=true)] + +namespace LiveXAML.Droid +{ + + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")] + public partial class Resource + { + + static Resource() + { + global::Android.Runtime.ResourceIdManager.UpdateIdValues(); + } + + public static void UpdateIdValues() + { + global::ModernHttpClient.Resource.String.library_name = global::LiveXAML.Droid.Resource.String.library_name; + } + + public partial class Attribute + { + + static Attribute() + { + global::Android.Runtime.ResourceIdManager.UpdateIdValues(); + } + + private Attribute() + { + } + } + + public partial class Drawable + { + + // aapt resource value: 0x7f020000 + public const int icon = 2130837504; + + static Drawable() + { + global::Android.Runtime.ResourceIdManager.UpdateIdValues(); + } + + private Drawable() + { + } + } + + public partial class String + { + + // aapt resource value: 0x7f030000 + public const int library_name = 2130903040; + + static String() + { + global::Android.Runtime.ResourceIdManager.UpdateIdValues(); + } + + private String() + { + } + } + } +} +#pragma warning restore 1591 diff --git a/LiveXAMLApp/Droid/Resources/drawable-hdpi/icon.png b/LiveXAMLApp/Droid/Resources/drawable-hdpi/icon.png new file mode 100644 index 0000000..964f110 Binary files /dev/null and b/LiveXAMLApp/Droid/Resources/drawable-hdpi/icon.png differ diff --git a/LiveXAMLApp/Droid/Resources/drawable-xhdpi/icon.png b/LiveXAMLApp/Droid/Resources/drawable-xhdpi/icon.png new file mode 100644 index 0000000..3c01e60 Binary files /dev/null and b/LiveXAMLApp/Droid/Resources/drawable-xhdpi/icon.png differ diff --git a/LiveXAMLApp/Droid/Resources/drawable-xxhdpi/icon.png b/LiveXAMLApp/Droid/Resources/drawable-xxhdpi/icon.png new file mode 100644 index 0000000..0d8c1c5 Binary files /dev/null and b/LiveXAMLApp/Droid/Resources/drawable-xxhdpi/icon.png differ diff --git a/LiveXAMLApp/Droid/Resources/drawable/icon.png b/LiveXAMLApp/Droid/Resources/drawable/icon.png new file mode 100644 index 0000000..b0ba715 Binary files /dev/null and b/LiveXAMLApp/Droid/Resources/drawable/icon.png differ diff --git a/LiveXAMLApp/Droid/packages.config b/LiveXAMLApp/Droid/packages.config new file mode 100644 index 0000000..332de11 --- /dev/null +++ b/LiveXAMLApp/Droid/packages.config @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/LiveXAML.sln b/LiveXAMLApp/LiveXAML.sln new file mode 100644 index 0000000..fc2577a --- /dev/null +++ b/LiveXAMLApp/LiveXAML.sln @@ -0,0 +1,57 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LiveXAML", "LiveXAML\LiveXAML.csproj", "{5868E89D-E592-492C-9004-D9FDCF258144}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LiveXAML.iOS", "iOS\LiveXAML.iOS.csproj", "{C9A99B01-23DE-4417-A171-29FEA5036F3C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LiveXAML.Droid", "Droid\LiveXAML.Droid.csproj", "{0020E7C2-977D-4CC6-BDFB-27381FE45E37}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + Debug|iPhoneSimulator = Debug|iPhoneSimulator + Release|iPhone = Release|iPhone + Release|iPhoneSimulator = Release|iPhoneSimulator + Debug|iPhone = Debug|iPhone + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Debug|iPhone.Build.0 = Debug|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Release|Any CPU.Build.0 = Release|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Release|iPhone.ActiveCfg = Release|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Release|iPhone.Build.0 = Release|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {0020E7C2-977D-4CC6-BDFB-27381FE45E37}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Debug|iPhone.Build.0 = Debug|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Release|Any CPU.Build.0 = Release|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Release|iPhone.ActiveCfg = Release|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Release|iPhone.Build.0 = Release|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {5868E89D-E592-492C-9004-D9FDCF258144}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Debug|iPhone.ActiveCfg = Debug|iPhone + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Debug|iPhone.Build.0 = Debug|iPhone + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Release|Any CPU.ActiveCfg = Release|iPhone + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Release|Any CPU.Build.0 = Release|iPhone + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Release|iPhone.ActiveCfg = Release|iPhone + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Release|iPhone.Build.0 = Release|iPhone + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator + {C9A99B01-23DE-4417-A171-29FEA5036F3C}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator + EndGlobalSection +EndGlobal diff --git a/LiveXAMLApp/LiveXAML/Dependencies/IWebSocketClient.cs b/LiveXAMLApp/LiveXAML/Dependencies/IWebSocketClient.cs new file mode 100644 index 0000000..a70d381 --- /dev/null +++ b/LiveXAMLApp/LiveXAML/Dependencies/IWebSocketClient.cs @@ -0,0 +1,28 @@ +using System; +using System.Threading.Tasks; + +namespace LiveXAML +{ + public abstract class IWebSocketClient + { + public Action Opened { + get; + set; + } + + public Action Error { + get; + set; + } + + public Action MessageReceived { + get; + set; + } + + public abstract void Open (string wslocalhost); + + public abstract void Send (string message); + } +} + diff --git a/LiveXAMLApp/LiveXAML/Dependencies/IXamlDependency.cs b/LiveXAMLApp/LiveXAML/Dependencies/IXamlDependency.cs new file mode 100644 index 0000000..05e792a --- /dev/null +++ b/LiveXAMLApp/LiveXAML/Dependencies/IXamlDependency.cs @@ -0,0 +1,11 @@ +using System; +using Xamarin.Forms; + +namespace LiveXAML +{ + public interface IXamlDependency + { + void LoadFromXaml (TView view, string xaml) where TView : BindableObject; + } +} + diff --git a/LiveXAMLApp/LiveXAML/LiveXAML.cs b/LiveXAMLApp/LiveXAML/LiveXAML.cs new file mode 100644 index 0000000..2179b2f --- /dev/null +++ b/LiveXAMLApp/LiveXAML/LiveXAML.cs @@ -0,0 +1,31 @@ +using System; + +using Xamarin.Forms; + +namespace LiveXAML +{ + public class App : Application + { + public App () + { + // The root page of your application + MainPage = new TestPage(); + } + + protected override void OnStart () + { + // Handle when your app starts + } + + protected override void OnSleep () + { + // Handle when your app sleeps + } + + protected override void OnResume () + { + // Handle when your app resumes + } + } +} + diff --git a/LiveXAMLApp/LiveXAML/LiveXAML.csproj b/LiveXAMLApp/LiveXAML/LiveXAML.csproj new file mode 100644 index 0000000..21b9441 --- /dev/null +++ b/LiveXAMLApp/LiveXAML/LiveXAML.csproj @@ -0,0 +1,74 @@ + + + + Debug + AnyCPU + {786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + {5868E89D-E592-492C-9004-D9FDCF258144} + Library + LiveXAML + LiveXAML + v4.5 + Profile78 + + + true + full + false + bin\Debug + DEBUG; + prompt + 4 + false + + + full + true + bin\Release + prompt + 4 + false + + + + + + + + + + + + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.Core.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.Xaml.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\portable-net40+sl4+win8+wp71+wpa81\System.Net.Http.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\portable-net40+sl4+win8+wp71+wpa81\System.Net.Http.Primitives.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\portable-net40+sl4+win8+wp71+wpa81\System.Net.Http.Extensions.dll + + + ..\packages\rda.SocketsForPCL.1.2.2\lib\portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Sockets.Plugin.dll + + + ..\packages\rda.SocketsForPCL.1.2.2\lib\portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Sockets.Plugin.Abstractions.dll + + + ..\packages\modernhttpclient.2.4.2\lib\Portable-Net45+WinRT45+WP8+WPA81\ModernHttpClient.dll + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/LiveXAML/LiveXaml.jar b/LiveXAMLApp/LiveXAML/LiveXaml.jar new file mode 100644 index 0000000..c554223 Binary files /dev/null and b/LiveXAMLApp/LiveXAML/LiveXaml.jar differ diff --git a/LiveXAMLApp/LiveXAML/Properties/AssemblyInfo.cs b/LiveXAMLApp/LiveXAML/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..0999821 --- /dev/null +++ b/LiveXAMLApp/LiveXAML/Properties/AssemblyInfo.cs @@ -0,0 +1,27 @@ +using System.Reflection; +using System.Runtime.CompilerServices; + +// Information about this assembly is defined by the following attributes. +// Change them to the values specific to your project. + +[assembly: AssemblyTitle ("LiveXAML")] +[assembly: AssemblyDescription ("")] +[assembly: AssemblyConfiguration ("")] +[assembly: AssemblyCompany ("")] +[assembly: AssemblyProduct ("")] +[assembly: AssemblyCopyright ("cristianosantos")] +[assembly: AssemblyTrademark ("")] +[assembly: AssemblyCulture ("")] + +// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". +// The form "{Major}.{Minor}.*" will automatically update the build and revision, +// and "{Major}.{Minor}.{Build}.*" will update just the revision. + +[assembly: AssemblyVersion ("1.0.*")] + +// The following attributes are used to specify the signing key for the assembly, +// if desired. See the Mono documentation for more information about signing. + +//[assembly: AssemblyDelaySign(false)] +//[assembly: AssemblyKeyFile("")] + diff --git a/LiveXAMLApp/LiveXAML/TestPage.cs b/LiveXAMLApp/LiveXAML/TestPage.cs new file mode 100644 index 0000000..d6f0fb5 --- /dev/null +++ b/LiveXAMLApp/LiveXAML/TestPage.cs @@ -0,0 +1,176 @@ +using System; + +using Xamarin.Forms; +using System.Diagnostics; +using System.Threading.Tasks; +using System.Text; +using System.Net; +using System.Reflection; + +namespace LiveXAML +{ + public class TestPage : ContentPage + { + IXamlDependency xamlDep; + bool receivedMessage=false; + + public TestPage () + { + xamlDep = DependencyService.Get (); + Content=StartLayout(); + } + + private async void ConnectServer(string address, int port){ + try{ + string realAddress=GetWSAddress(address,port); + var client = DependencyService.Get(DependencyFetchTarget.NewInstance); + client.Opened = delegate() { + Debug.WriteLine ("Opened"); + if (!receivedMessage){ + receivedMessage=true; + Device.BeginInvokeOnMainThread(delegate { + Content=null; + }); + } + }; + client.Error = delegate(Exception obj) { + Device.BeginInvokeOnMainThread(async delegate() { + await DisplayAlert("Connection failed","Connection failed on \""+realAddress+"\".\n"+obj.Message,"Ok"); + }); + Debug.WriteLine(obj); + }; + client.MessageReceived = delegate(string message) { + if (!receivedMessage){ + receivedMessage=true; + Device.BeginInvokeOnMainThread(delegate { + Content=null; + }); + } + string xaml=message; + Device.BeginInvokeOnMainThread(delegate() { + try{ + xamlDep.LoadFromXaml(this,xaml); + } catch (TargetInvocationException ex){ + ShowXamlError(client,ex.InnerException); + Debug.WriteLine(ex); + } catch (Exception ex){ + ShowXamlError(client,ex); + Debug.WriteLine(ex); + } + }); + }; + client.Open(realAddress); + } catch (WebException ex){ + Device.BeginInvokeOnMainThread (async delegate() { + await DisplayAlert ("Connection failed", "Please ensure that you have the server running.", "Ok"); + }); + } catch (Exception ex){ + Device.BeginInvokeOnMainThread (async delegate() { + await DisplayAlert ("Exception", ex.ToString (), "Ok"); + }); + Debug.WriteLine (ex); + } + } + + string GetWSAddress (string address, int port) + { + string realAddress=address; + if (!realAddress.StartsWith("ws://") && !realAddress.StartsWith("wss://")){ + realAddress="ws://"+address; + } + if (!realAddress.Substring(3).Contains(":")){ + if (realAddress.EndsWith("/")){ + realAddress=realAddress.Substring(0,realAddress.Length-1)+":"+port.ToString()+"/"; + } else { + realAddress+=":"+port.ToString()+"/"; + } + } else{ + if (!realAddress.EndsWith("/")){ + realAddress+="/"; + } + } + return realAddress; + } + + void ShowXamlError (IWebSocketClient client, Exception ex) + { + Device.BeginInvokeOnMainThread(async delegate() { + var result=await DisplayAlert("Exception on XAML",ex.Message,"Report to server","Ok"); + if (result){ + client.Send(ex.ToString()); + } + }); + } + + StackLayout StartLayout () + { + var menuLayout = new StackLayout{ + HeightRequest=150, + VerticalOptions=LayoutOptions.CenterAndExpand, + HorizontalOptions=LayoutOptions.FillAndExpand + }; + var ipLbl = new Label { + VerticalOptions=LayoutOptions.CenterAndExpand, + Text = "Ip Address:", + WidthRequest=100 + }; + var ipEntry = new Entry { + HorizontalOptions=LayoutOptions.FillAndExpand, + Text="127.0.0.1" + }; + var layout= new StackLayout{ + HeightRequest=40, + Orientation=StackOrientation.Horizontal, + HorizontalOptions=LayoutOptions.FillAndExpand, + Children={ + ipLbl,ipEntry + } + }; + menuLayout.Children.Add (layout); + var porLbl = new Label { + VerticalOptions=LayoutOptions.CenterAndExpand, + Text = "Port:", + WidthRequest=100, + }; + var portEntry = new Entry { + HorizontalOptions=LayoutOptions.FillAndExpand, + Text="9934" + }; + layout= new StackLayout{ + HeightRequest=40, + Orientation=StackOrientation.Horizontal, + HorizontalOptions=LayoutOptions.FillAndExpand, + Children={ + porLbl,portEntry + } + }; + menuLayout.Children.Add (layout); + var connectButton = new Button { + Text="Connect", + TextColor=Color.White, + BackgroundColor=Color.Gray + }; + connectButton.Clicked += delegate(object sender, EventArgs e) { + ConnectServer(ipEntry.Text,int.Parse(portEntry.Text)); + }; + layout= new StackLayout{ + HeightRequest=40, + Padding=new Thickness(50,0,50,0), + HorizontalOptions=LayoutOptions.FillAndExpand, + Children={ + connectButton + } + }; + menuLayout.Children.Add (layout); + return new StackLayout { + VerticalOptions=LayoutOptions.FillAndExpand, + HorizontalOptions=LayoutOptions.FillAndExpand, + Children={ + menuLayout + } + }; + } + } +} + + diff --git a/LiveXAMLApp/LiveXAML/packages.config b/LiveXAMLApp/LiveXAML/packages.config new file mode 100644 index 0000000..566e789 --- /dev/null +++ b/LiveXAMLApp/LiveXAML/packages.config @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/LiveXAML/test.xaml b/LiveXAMLApp/LiveXAML/test.xaml new file mode 100644 index 0000000..4b2d8be --- /dev/null +++ b/LiveXAMLApp/LiveXAML/test.xaml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/iOS/AppDelegate.cs b/LiveXAMLApp/iOS/AppDelegate.cs new file mode 100644 index 0000000..503b167 --- /dev/null +++ b/LiveXAMLApp/iOS/AppDelegate.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +using Foundation; +using UIKit; + +namespace LiveXAML.iOS +{ + [Register ("AppDelegate")] + public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate + { + public override bool FinishedLaunching (UIApplication app, NSDictionary options) + { + global::Xamarin.Forms.Forms.Init (); + + LoadApplication (new App ()); + + return base.FinishedLaunching (app, options); + } + } +} + diff --git a/LiveXAMLApp/iOS/Dependencies/WebSocketClient.cs b/LiveXAMLApp/iOS/Dependencies/WebSocketClient.cs new file mode 100644 index 0000000..b252827 --- /dev/null +++ b/LiveXAMLApp/iOS/Dependencies/WebSocketClient.cs @@ -0,0 +1,62 @@ +using System; +using WebSocket4Net; +using LiveXAML.iOS; +using System.Threading.Tasks; +using System.Threading; + +[assembly: Xamarin.Forms.Dependency (typeof (WebSocketClient))] +namespace LiveXAML.iOS +{ + public class WebSocketClient:IWebSocketClient + { + WebSocket websocket; + Task timer; + bool connected = false; + + public WebSocketClient () + { + } + + public override void Open (string wslocalhost){ + connected = false; + websocket = new WebSocket(wslocalhost,"",(WebSocketVersion) (-1)); + websocket.Opened += delegate(object sender, EventArgs e) { + connected = true; + if (Opened!=null){ + Opened(); + } + }; + websocket.MessageReceived += delegate(object sender, MessageReceivedEventArgs e) { + if (MessageReceived!=null){ + MessageReceived(e.Message); + } + }; + websocket.Error += delegate(object sender, SuperSocket.ClientEngine.ErrorEventArgs e) { + if (!connected && websocket!=null){ + connected = true; + websocket.Close(); + if (Error!=null){ + Error(e.Exception); + } + } + }; + timer = new Task (async delegate() { + await Task.Delay(2000); + if (!connected && websocket!=null){ + connected = true; + websocket.Close(); + if (Error!=null){ + Error(new Exception("Connection failed")); + } + } + }); + timer.Start (); + websocket.Open (); + } + + public override void Send (string message){ + websocket.Send(message); + } + } +} + diff --git a/LiveXAMLApp/iOS/Dependencies/XamlDependency.cs b/LiveXAMLApp/iOS/Dependencies/XamlDependency.cs new file mode 100644 index 0000000..4a184aa --- /dev/null +++ b/LiveXAMLApp/iOS/Dependencies/XamlDependency.cs @@ -0,0 +1,44 @@ +using System; +using System.Linq; +using System.Reflection; +using LiveXAML.iOS; +using Xamarin.Forms; + +[assembly: Xamarin.Forms.Dependency (typeof (XamlDependency))] +namespace LiveXAML.iOS +{ + public class XamlDependency:IXamlDependency + { + static Func loadXaml; + public XamlDependency () + { + // This is the current situation, where the LoadFromXaml is the only non-public static method. + var genericMethod = typeof (Xamarin.Forms.Xaml.Extensions) + .GetMethods (BindingFlags.Static | BindingFlags.NonPublic).FirstOrDefault (); + + // If we didn't find it, it may be because the extension method may be public now :) + if (genericMethod == null) + genericMethod = typeof (Xamarin.Forms.Xaml.Extensions) + .GetMethods (BindingFlags.Static | BindingFlags.Public) + .FirstOrDefault (m => m.GetParameters().Last().ParameterType == typeof(string)); + + if (genericMethod == null){ + loadXaml = (view, xaml) => { throw new NotSupportedException("Xamarin.Forms implementation of XAML loading not found. Please update the Dynamic nuget package."); }; + } + else { + genericMethod = genericMethod.MakeGenericMethod(typeof(BindableObject)); + loadXaml = (view, xaml) => (BindableObject)genericMethod.Invoke (null, new object[] { view, xaml }); + } + } + + #region IXamlDependency implementation + + public void LoadFromXaml (TView view, string xaml) where TView : Xamarin.Forms.BindableObject + { + loadXaml (view, xaml); + } + + #endregion + } +} + diff --git a/LiveXAMLApp/iOS/Entitlements.plist b/LiveXAMLApp/iOS/Entitlements.plist new file mode 100644 index 0000000..e9a3005 --- /dev/null +++ b/LiveXAMLApp/iOS/Entitlements.plist @@ -0,0 +1,7 @@ + + + + + + + diff --git a/LiveXAMLApp/iOS/Info.plist b/LiveXAMLApp/iOS/Info.plist new file mode 100644 index 0000000..01731b2 --- /dev/null +++ b/LiveXAMLApp/iOS/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDisplayName + LiveXAML + CFBundleIdentifier + com.companyname.livexaml + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + MinimumOSVersion + 7.0 + UIDeviceFamily + + 1 + 2 + + UILaunchStoryboardName + LaunchScreen + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Resources/Images.xcassets/AppIcons.appiconset + + + diff --git a/LiveXAMLApp/iOS/LiveXAML.iOS.csproj b/LiveXAMLApp/iOS/LiveXAML.iOS.csproj new file mode 100644 index 0000000..614a404 --- /dev/null +++ b/LiveXAMLApp/iOS/LiveXAML.iOS.csproj @@ -0,0 +1,147 @@ + + + + Debug + iPhoneSimulator + {FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + {C9A99B01-23DE-4417-A171-29FEA5036F3C} + Exe + LiveXAML.iOS + Resources + LiveXAML.iOS + 960dba32995dcd2801d5b7c356b6307fe689f67d + + + true + full + false + bin\iPhoneSimulator\Debug + DEBUG;ENABLE_TEST_CLOUD; + prompt + 4 + false + i386 + None + true + true + true + true + iPhone Developer + true + + + full + true + bin\iPhone\Release + prompt + 4 + false + ARMv7, ARM64 + Entitlements.plist + true + true + iPhone Developer + true + + + full + true + bin\iPhoneSimulator\Release + prompt + 4 + false + i386 + None + true + iPhone Developer + true + + + true + full + false + bin\iPhone\Debug + DEBUG;ENABLE_TEST_CLOUD; + prompt + 4 + false + ARMv7, ARM64 + Entitlements.plist + true + iPhone Developer + true + true + true + true + true + + + + + + + + ..\packages\Xamarin.Insights.1.10.6\lib\Xamarin.iOS10\Xamarin.Insights.dll + + + ..\packages\Xamarin.Insights.1.10.6\lib\Xamarin.iOS10\PLCrashReporterUnifiedBinding.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10\Xamarin.Forms.Platform.iOS.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10\Xamarin.Forms.Core.dll + + + ..\packages\Xamarin.Forms.1.3.5.6335\lib\Xamarin.iOS10\Xamarin.Forms.Xaml.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\Xamarin.iOS10\System.Net.Http.Primitives.dll + + + ..\packages\Microsoft.Net.Http.2.2.29\lib\Xamarin.iOS10\System.Net.Http.Extensions.dll + + + ..\packages\rda.SocketsForPCL.1.2.2\lib\Xamarin.iOS10\Sockets.Plugin.dll + + + ..\packages\rda.SocketsForPCL.1.2.2\lib\Xamarin.iOS10\Sockets.Plugin.Abstractions.dll + + + ..\packages\modernhttpclient.2.4.2\lib\Xamarin.iOS10\ModernHttpClient.dll + + + ..\packages\WebSocket4Net.0.14.1\lib\Xamarin.iOS10\WebSocket4Net.dll + + + + + {5868E89D-E592-492C-9004-D9FDCF258144} + LiveXAML + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/iOS/Main.cs b/LiveXAMLApp/iOS/Main.cs new file mode 100644 index 0000000..776c506 --- /dev/null +++ b/LiveXAMLApp/iOS/Main.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using Foundation; +using UIKit; + +namespace LiveXAML.iOS +{ + public class Application + { + // This is the main entry point of the application. + static void Main (string[] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main (args, null, "AppDelegate"); + } + } +} diff --git a/LiveXAMLApp/iOS/Resources/Images.xcassets/AppIcons.appiconset/Contents.json b/LiveXAMLApp/iOS/Resources/Images.xcassets/AppIcons.appiconset/Contents.json new file mode 100644 index 0000000..24f9974 --- /dev/null +++ b/LiveXAMLApp/iOS/Resources/Images.xcassets/AppIcons.appiconset/Contents.json @@ -0,0 +1,108 @@ +{ + "images": [ + { + "size": "29x29", + "scale": "1x", + "idiom": "iphone" + }, + { + "size": "29x29", + "scale": "2x", + "idiom": "iphone" + }, + { + "size": "29x29", + "scale": "3x", + "idiom": "iphone" + }, + { + "size": "40x40", + "scale": "2x", + "idiom": "iphone" + }, + { + "size": "40x40", + "scale": "3x", + "idiom": "iphone" + }, + { + "size": "57x57", + "scale": "1x", + "idiom": "iphone" + }, + { + "size": "57x57", + "scale": "2x", + "idiom": "iphone" + }, + { + "size": "60x60", + "scale": "2x", + "idiom": "iphone" + }, + { + "size": "60x60", + "scale": "3x", + "idiom": "iphone" + }, + { + "size": "29x29", + "scale": "1x", + "idiom": "ipad" + }, + { + "size": "29x29", + "scale": "2x", + "idiom": "ipad" + }, + { + "size": "40x40", + "scale": "1x", + "idiom": "ipad" + }, + { + "size": "40x40", + "scale": "2x", + "idiom": "ipad" + }, + { + "size": "50x50", + "scale": "1x", + "idiom": "ipad" + }, + { + "size": "50x50", + "scale": "2x", + "idiom": "ipad" + }, + { + "size": "72x72", + "scale": "1x", + "idiom": "ipad" + }, + { + "size": "72x72", + "scale": "2x", + "idiom": "ipad" + }, + { + "size": "76x76", + "scale": "1x", + "idiom": "ipad" + }, + { + "size": "76x76", + "scale": "2x", + "idiom": "ipad" + }, + { + "size": "120x120", + "scale": "1x", + "idiom": "car" + } + ], + "info": { + "version": 1, + "author": "xcode" + } +} \ No newline at end of file diff --git a/LiveXAMLApp/iOS/Resources/LaunchScreen.xib b/LiveXAMLApp/iOS/Resources/LaunchScreen.xib new file mode 100644 index 0000000..e32bba4 --- /dev/null +++ b/LiveXAMLApp/iOS/Resources/LaunchScreen.xib @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/LiveXAMLApp/iOS/packages.config b/LiveXAMLApp/iOS/packages.config new file mode 100644 index 0000000..a0efeaf --- /dev/null +++ b/LiveXAMLApp/iOS/packages.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/License-Stable.rtf b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/License-Stable.rtf new file mode 100644 index 0000000..3aec6b6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/License-Stable.rtf @@ -0,0 +1,118 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset0 Times New Roman;}{\f2\fswiss\fprq2\fcharset0 Calibri;}{\f3\fnil\fcharset0 Calibri;}{\f4\fnil\fcharset2 Symbol;}} +{\colortbl ;\red31\green73\blue125;\red0\green0\blue255;} +{\*\listtable +{\list\listhybrid +{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx360} +{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx363} +{\listlevel\levelnfc2\leveljc0\levelstartat1{\leveltext\'02\'02.;}{\levelnumbers\'01;}\jclisttab\tx720}\listid1 } +{\list\listhybrid +{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx363} +{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx363}\listid2 }} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +{\stylesheet{ Normal;}{\s1 heading 1;}{\s2 heading 2;}{\s3 heading 3;}} +{\*\generator Riched20 6.2.9200}\viewkind4\uc1 +\pard\nowidctlpar\sb120\sa120\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\par + +\pard\brdrb\brdrs\brdrw10\brsp20 \nowidctlpar\sb120\sa120 MICROSOFT .NET LIBRARY \par + +\pard\nowidctlpar\sb120\sa120\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120\b0 updates,\par +{\pntext\f4\'B7\tab}supplements,\par +{\pntext\f4\'B7\tab}Internet-based services, and\par +{\pntext\f4\'B7\tab}support services\par + +\pard\nowidctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par + +\pard\brdrt\brdrs\brdrw10\brsp20 \nowidctlpar\sb120\sa120 IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard +{\listtext\f0 1.\tab}\jclisttab\tx360\ls1\nowidctlpar\s1\fi-357\li357\sb120\sa120 INSTALLATION AND USE RIGHTS. \par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls1\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 Installation and Use.\b0\fs20 You may install and use any number of copies of the software to design, develop and test your programs.\par +{\listtext\f0 b.\tab}\b\fs19 Third Party Programs.\b0\fs20 The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard +{\listtext\f0 2.\tab}\jclisttab\tx360\ls1\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls1\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 DISTRIBUTABLE CODE.\~ \b0 The software is comprised of Distributable Code. \f1\ldblquote\f0 Distributable Code\f1\rdblquote\f0 is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\par + +\pard +{\listtext\f0 i.\tab}\jclisttab\tx720\ls1\ilvl2\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077 Right to Use and Distribute. \par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 You may copy and distribute the object code form of the software.\par +{\pntext\f4\'B7\tab}Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\par + +\pard\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077\b ii.\tab Distribution Requirements.\b0 \b For any Distributable Code you distribute, you must\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 add significant primary functionality to it in your programs;\par +{\pntext\f4\'B7\tab}require distributors and external end users to agree to terms that protect it at least as much as this agreement;\par +{\pntext\f4\'B7\tab}display your valid copyright notice on your programs; and\par +{\pntext\f4\'B7\tab}indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\par + +\pard\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077\b iii.\tab Distribution Restrictions.\b0 \b You may not\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 alter any copyright, trademark or patent notice in the Distributable Code;\par +{\pntext\f4\'B7\tab}use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\par +{\pntext\f4\'B7\tab}include Distributable Code in malicious, deceptive or unlawful programs; or\par +{\pntext\f4\'B7\tab}modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-358\li1792\sb120\sa120 the code be disclosed or distributed in source code form; or\cf1\f2\par +{\pntext\f4\'B7\tab}\cf0\f0 others have the right to modify it.\cf1\f2\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\cf0\b\f0 3.\tab\fs19 SCOPE OF LICENSE. \b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120 work around any technical limitations in the software;\par +{\pntext\f4\'B7\tab}reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +{\pntext\f4\'B7\tab}publish the software for others to copy;\par +{\pntext\f4\'B7\tab}rent, lease or lend the software;\par +{\pntext\f4\'B7\tab}transfer the software or this agreement to any third party; or\par +{\pntext\f4\'B7\tab}use the software for commercial software hosting services.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\b\fs20 4.\tab\fs19 BACKUP COPY. \b0 You may make one backup copy of the software. You may use it only to reinstall the software.\par +\b\fs20 5.\tab\fs19 DOCUMENTATION. \b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\par +\b\fs20 6.\tab\fs19 EXPORT RESTRICTIONS. \b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see {\cf2\ul\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting}}}}\f0\fs19 .\cf2\ul\fs20\par +\cf0\ulnone\b 7.\tab\fs19 SUPPORT SERVICES. \b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\par +\b\fs20 8.\tab\fs19 ENTIRE AGREEMENT. \b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\par +\b\fs20 9.\tab\fs19 APPLICABLE LAW.\par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls2\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 United States. \b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\par +{\listtext\f0 b.\tab}\b Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 10.\tab\fs19 LEGAL EFFECT. \b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\par +\b\fs20 11.\tab\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\nowidctlpar\li357\sb120\sa120 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 12.\tab\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\nowidctlpar\li357\sb120\sa120\b0 This limitation applies to\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +{\pntext\f4\'B7\tab}claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\nowidctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\par +Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\par + +\pard\nowidctlpar\s1\sb120\sa120\b\lang1033 EXON\'c9RATION DE GARANTIE. \b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\par +\b LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES. \b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\par + +\pard\nowidctlpar\sb120\sa120\lang9 Cette limitation concerne :\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\li720\sb120\sa120 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\par +{\pntext\f4\'B7\tab}les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\par + +\pard\nowidctlpar\sb120\sa120 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\par + +\pard\nowidctlpar\s1\sb120\sa120\b\lang1033 EFFET JURIDIQUE. \b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\par + +\pard\nowidctlpar\sb120\sa120\b\fs20\lang1036\par + +\pard\sa200\sl276\slmult1\b0\f3\fs22\lang9\par +} + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/Microsoft.Bcl.1.1.10.nupkg b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/Microsoft.Bcl.1.1.10.nupkg new file mode 100644 index 0000000..5d380bb Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/Microsoft.Bcl.1.1.10.nupkg differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/Xamarin.iOS10/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/Xamarin.iOS10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/monoandroid/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/monoandroid/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/monotouch/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/monotouch/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.IO.dll new file mode 100644 index 0000000..26cd551 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.IO.xml new file mode 100644 index 0000000..2fbeb94 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.IO.xml @@ -0,0 +1,8 @@ + + + + System.IO + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Threading.Tasks.dll new file mode 100644 index 0000000..a60ab26 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Threading.Tasks.xml new file mode 100644 index 0000000..42c08c5 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/System.Threading.Tasks.xml @@ -0,0 +1,475 @@ + + + + System.Threading.Tasks + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net40/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net45/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/net45/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Runtime.dll new file mode 100644 index 0000000..18e255b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Runtime.xml new file mode 100644 index 0000000..e711ec0 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Runtime.xml @@ -0,0 +1,860 @@ + + + + System.Runtime + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Argument must be of type {0}.. + + + + + Looks up a localized string similar to The last element of an eight element tuple must be a Tuple.. + + + + + Defines methods to support the comparison of objects for structural equality. + + + + + Determines whether an object is structurally equal to the current instance. + + The object to compare with the current instance. + An object that determines whether the current instance and other are equal. + true if the two objects are equal; otherwise, false. + + + + Returns a hash code for the current instance. + + An object that computes the hash code of the current object. + The hash code for the current instance. + + + + Supports the structural comparison of collection objects. + + + + + Determines whether the current collection object precedes, occurs in the same position as, or follows another object in the sort order. + + The object to compare with the current instance. + An object that compares members of the current collection object with the corresponding members of other. + An integer that indicates the relationship of the current collection object to other. + + This instance and other are not the same type. + + + + + Encapsulates a method that has five parameters and returns a value of the type specified by the TResult parameter. + + The type of the first parameter of the method that this delegate encapsulates. + The type of the second parameter of the method that this delegate encapsulates. + The type of the third parameter of the method that this delegate encapsulates. + The type of the fourth parameter of the method that this delegate encapsulates. + The type of the fifth parameter of the method that this delegate encapsulates. + The type of the return value of the method that this delegate encapsulates. + The first parameter of the method that this delegate encapsulates. + The second parameter of the method that this delegate encapsulates. + The third parameter of the method that this delegate encapsulates. + The fourth parameter of the method that this delegate encapsulates. + The fifth parameter of the method that this delegate encapsulates. + The return value of the method that this delegate encapsulates. + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + + Helper so we can call some tuple methods recursively without knowing the underlying types. + + + + + Provides static methods for creating tuple objects. + + + + + Creates a new 1-tuple, or singleton. + + The type of the only component of the tuple. + The value of the only component of the tuple. + A tuple whose value is (item1). + + + + Creates a new 3-tuple, or pair. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + An 2-tuple (pair) whose value is (item1, item2). + + + + Creates a new 3-tuple, or triple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + An 3-tuple (triple) whose value is (item1, item2, item3). + + + + Creates a new 4-tuple, or quadruple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + An 4-tuple (quadruple) whose value is (item1, item2, item3, item4). + + + + Creates a new 5-tuple, or quintuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + An 5-tuple (quintuple) whose value is (item1, item2, item3, item4, item5). + + + + Creates a new 6-tuple, or sextuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + An 6-tuple (sextuple) whose value is (item1, item2, item3, item4, item5, item6). + + + + Creates a new 7-tuple, or septuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + An 7-tuple (septuple) whose value is (item1, item2, item3, item4, item5, item6, item7). + + + + Creates a new 8-tuple, or octuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The type of the eighth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + The value of the eighth component of the tuple. + An 8-tuple (octuple) whose value is (item1, item2, item3, item4, item5, item6, item7, item8). + + + + Represents a 1-tuple, or singleton. + + The type of the tuple's only component. + + + + Initializes a new instance of the class. + + The value of the current tuple object's single component. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the tuple object's single component. + + + The value of the current tuple object's single component. + + + + + Represents an 2-tuple, or pair. + + The type of the first component of the tuple. + The type of the second component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Represents an 3-tuple, or triple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Represents an 4-tuple, or quadruple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Represents an 5-tuple, or quintuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Represents an 6-tuple, or sextuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Gets the value of the current tuple object's sixth component. + + + The value of the current tuple object's sixth component. + + + + + Represents an 7-tuple, or septuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Gets the value of the current tuple object's sixth component. + + + The value of the current tuple object's sixth component. + + + + + Gets the value of the current tuple object's seventh component. + + + The value of the current tuple object's seventh component. + + + + + Represents an n-tuple, where n is 8 or greater. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + Any generic Tuple object that defines the types of the tuple's remaining components. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + Any generic Tuple object that contains the values of the tuple's remaining components. + + rest is not a generic Tuple object. + + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Gets the value of the current tuple object's sixth component. + + + The value of the current tuple object's sixth component. + + + + + Gets the value of the current tuple object's seventh component. + + + The value of the current tuple object's seventh component. + + + + + Gets the current tuple object's remaining components. + + + The value of the current tuple object's remaining components. + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Threading.Tasks.dll new file mode 100644 index 0000000..a089d47 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Threading.Tasks.xml new file mode 100644 index 0000000..5375fda --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/System.Threading.Tasks.xml @@ -0,0 +1,8969 @@ + + + + System.Threading.Tasks + + + + Represents one or more errors that occur during application execution. + + is used to consolidate multiple failures into a single, throwable + exception object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with + a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + The argument + is null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Allocates a new aggregate exception with the specified message and list of inner exceptions. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Returns the that is the root cause of this exception. + + + + + Invokes a handler on each contained by this . + + The predicate to execute for each exception. The predicate accepts as an + argument the to be processed and returns a Boolean to indicate + whether the exception was handled. + + Each invocation of the returns true or false to indicate whether the + was handled. After all invocations, if any exceptions went + unhandled, all unhandled exceptions will be put into a new + which will be thrown. Otherwise, the method simply returns. If any + invocations of the throws an exception, it will halt the processing + of any more exceptions and immediately propagate the thrown exception as-is. + + An exception contained by this was not handled. + The argument is + null. + + + + Flattens an instances into a single, new instance. + + A new, flattened . + + If any inner exceptions are themselves instances of + , this method will recursively flatten all of them. The + inner exceptions returned in the new + will be the union of all of the the inner exceptions from exception tree rooted at the provided + instance. + + + + + Creates and returns a string representation of the current . + + A string representation of the current exception. + + + + Gets a read-only collection of the instances that caused the + current exception. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to One or more errors occurred.. + + + + + Looks up a localized string similar to An element of innerExceptions was null.. + + + + + Looks up a localized string similar to {0}{1}---> (Inner Exception #{2}) {3}{4}{5}. + + + + + Looks up a localized string similar to No tokens were supplied.. + + + + + Looks up a localized string similar to The CancellationTokenSource associated with this CancellationToken has been disposed.. + + + + + Looks up a localized string similar to The CancellationTokenSource has been disposed.. + + + + + Looks up a localized string similar to The SyncRoot property may not be used for the synchronization of concurrent collections.. + + + + + Looks up a localized string similar to The array is multidimensional, or the type parameter for the set cannot be cast automatically to the type of the destination array.. + + + + + Looks up a localized string similar to The index is equal to or greater than the length of the array, or the number of elements in the dictionary is greater than the available space from index to the end of the destination array.. + + + + + Looks up a localized string similar to The capacity argument must be greater than or equal to zero.. + + + + + Looks up a localized string similar to The concurrencyLevel argument must be positive.. + + + + + Looks up a localized string similar to The index argument is less than zero.. + + + + + Looks up a localized string similar to TKey is a reference type and item.Key is null.. + + + + + Looks up a localized string similar to The key already existed in the dictionary.. + + + + + Looks up a localized string similar to The source argument contains duplicate keys.. + + + + + Looks up a localized string similar to The key was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The value was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The lazily-initialized type does not have a public, parameterless constructor.. + + + + + Looks up a localized string similar to ValueFactory returned null.. + + + + + Looks up a localized string similar to The spinCount argument must be in the range 0 to {0}, inclusive.. + + + + + Looks up a localized string similar to There are too many threads currently waiting on the event. A maximum of {0} waiting threads are supported.. + + + + + Looks up a localized string similar to The event has been disposed.. + + + + + Looks up a localized string similar to The operation was canceled.. + + + + + Looks up a localized string similar to The condition argument is null.. + + + + + Looks up a localized string similar to The timeout must represent a value between -1 and Int32.MaxValue, inclusive.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions combined LongRunning and ExecuteSynchronously. Synchronous continuations should not be long running.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions excluded all continuation kinds.. + + + + + Looks up a localized string similar to (Internal)An attempt was made to create a LongRunning SelfReplicating task.. + + + + + Looks up a localized string similar to The value needs to translate in milliseconds to -1 (signifying an infinite timeout), 0 or a positive integer less than or equal to Int32.MaxValue.. + + + + + Looks up a localized string similar to The value needs to be either -1 (signifying an infinite timeout), 0 or a positive integer.. + + + + + Looks up a localized string similar to A task may only be disposed if it is in a completion state (RanToCompletion, Faulted or Canceled).. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.LongRunning in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.PreferFairness in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating in calls to FromAsync.. + + + + + Looks up a localized string similar to FromAsync was called with a TaskManager that had already shut down.. + + + + + Looks up a localized string similar to The tasks argument contains no tasks.. + + + + + Looks up a localized string similar to It is invalid to exclude specific continuation kinds for continuations off of multiple tasks.. + + + + + Looks up a localized string similar to The tasks argument included a null value.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that was already started.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a continuation task.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task not bound to a delegate, such as the task returned from an asynchronous method.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that has already completed.. + + + + + Looks up a localized string similar to Start may not be called on a task that was already started.. + + + + + Looks up a localized string similar to Start may not be called on a continuation task.. + + + + + Looks up a localized string similar to Start may not be called on a task with null action.. + + + + + Looks up a localized string similar to Start may not be called on a promise-style task.. + + + + + Looks up a localized string similar to Start may not be called on a task that has completed.. + + + + + Looks up a localized string similar to The task has been disposed.. + + + + + Looks up a localized string similar to The tasks array included at least one null element.. + + + + + Looks up a localized string similar to The awaited task has not yet completed.. + + + + + Looks up a localized string similar to A task was canceled.. + + + + + Looks up a localized string similar to The exceptions collection was empty.. + + + + + Looks up a localized string similar to The exceptions collection included at least one null element.. + + + + + Looks up a localized string similar to A Task's exception(s) were not observed either by Waiting on the Task or accessing its Exception property. As a result, the unobserved exception was rethrown by the finalizer thread.. + + + + + Looks up a localized string similar to (Internal)Expected an Exception or an IEnumerable<Exception>. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was already executed.. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was previously queued to a different TaskScheduler.. + + + + + Looks up a localized string similar to The current SynchronizationContext may not be used as a TaskScheduler.. + + + + + Looks up a localized string similar to The TryExecuteTaskInline call to the underlying scheduler succeeded, but the task body was not invoked.. + + + + + Looks up a localized string similar to An exception was thrown by a TaskScheduler.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating for a Task<TResult>.. + + + + + Looks up a localized string similar to {Not yet computed}. + + + + + Looks up a localized string similar to A task's Exception may only be set directly if the task was created without a function.. + + + + + Looks up a localized string similar to An attempt was made to transition a task to a final state when it had already completed.. + + + + + Represents a thread-safe collection of keys and values. + + The type of the keys in the dictionary. + The type of the values in the dictionary. + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads. + + + + + Initializes a new instance of the + class that is empty, has the default concurrency level, has the default initial capacity, and + uses the default comparer for the key type. + + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the default + comparer for the key type. + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + is + less than 1. + is less than + 0. + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency + level, has the default initial capacity, and uses the default comparer for the key type. + + The whose elements are copied to + the new + . + is a null reference + (Nothing in Visual Basic). + contains one or more + duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the specified + . + + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency level, has the default + initial capacity, and uses the specified + . + + The whose elements are copied to + the new + . + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). -or- + is a null reference (Nothing in Visual Basic). + + + + + Initializes a new instance of the + class that contains elements copied from the specified , + has the specified concurrency level, has the specified initial capacity, and uses the specified + . + + The estimated number of threads that will update the + concurrently. + The whose elements are copied to the new + . + The implementation to use + when comparing keys. + + is a null reference (Nothing in Visual Basic). + -or- + is a null reference (Nothing in Visual Basic). + + + is less than 1. + + contains one or more duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level, has the specified initial capacity, and + uses the specified . + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + The + implementation to use when comparing keys. + + is less than 1. -or- + is less than 0. + + is a null reference + (Nothing in Visual Basic). + + + + Attempts to add the specified key and value to the . + + The key of the element to add. + The value of the element to add. The value can be a null reference (Nothing + in Visual Basic) for reference types. + true if the key/value pair was added to the + successfully; otherwise, false. + is null reference + (Nothing in Visual Basic). + The + contains too many elements. + + + + Determines whether the contains the specified + key. + + The key to locate in the . + true if the contains an element with + the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Attempts to remove and return the the value with the specified key from the + . + + The key of the element to remove and return. + When this method returns, contains the object removed from the + or the default value of + if the operation failed. + true if an object was removed successfully; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Removes the specified key from the dictionary if it exists and returns its associated value. + If matchValue flag is set, the key will be removed only if is associated with a particular + value. + + The key to search for and remove if it exists. + The variable into which the removed value, if found, is stored. + Whether removal of the key is conditional on its value. + The conditional value to compare against if is true + + + + + Attempts to get the value associated with the specified key from the . + + The key of the value to get. + When this method returns, contains the object from + the + with the spedified key or the default value of + , if the operation failed. + true if the key was found in the ; + otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Compares the existing value for the specified key with a specified value, and if they’re equal, + updates the key with a third value. + + The key whose value is compared with and + possibly replaced. + The value that replaces the value of the element with if the comparison results in equality. + The value that is compared to the value of the element with + . + true if the value with was equal to and replaced with ; otherwise, + false. + is a null + reference. + + + + Removes all keys and values from the . + + + + + Copies the elements of the to an array of + type , starting at the + specified array index. + + The one-dimensional array of type + that is the destination of the elements copied from the . The array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Copies the key and value pairs stored in the to a + new array. + + A new array containing a snapshot of key and value pairs copied from the . + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToPairs. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToEntries. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToObjects. + + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Shared internal implementation for inserts and updates. + If key exists, we always return false; and if updateIfExists == true we force update with value; + If key doesn't exist, we always add value and return true; + + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + The function used to generate a value for the key + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value for the key as returned by valueFactory + if the key was not in the dictionary. + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + the value to be added, if the key does not already exist + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value if the key was not in the dictionary. + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The function used to generate a value for an absent key + The function used to generate a new value for an existing key + based on the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The value to be added for an absent key + The function used to generate a new value for an existing key based on + the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds the specified key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + An element with the same key already exists in the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + true if the element is successfully remove; otherwise false. This method also returns + false if + was not found in the original . + + is a null reference + (Nothing in Visual Basic). + + + + Adds the specified value to the + with the specified key. + + The + structure representing the key and value to add to the . + The of is null. + The + contains too many elements. + An element with the same key already exists in the + + + + + Determines whether the + contains a specific key and value. + + The + structure to locate in the . + true if the is found in the ; otherwise, false. + + + + Removes a key and value from the dictionary. + + The + structure representing the key and value to remove from the . + true if the key and value represented by is successfully + found and removed; otherwise, false. + The Key property of is a null reference (Nothing in Visual Basic). + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Adds the specified key and value to the dictionary. + + The object to use as the key. + The object to use as the value. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + is of a type that is not assignable to the key type of the . -or- + is of a type that is not assignable to , + the type of values in the . + -or- A value with the same key already exists in the . + + + + + Gets whether the contains an + element with the specified key. + + The key to locate in the . + true if the contains + an element with the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + Provides an for the + . + An for the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + is a null reference + (Nothing in Visual Basic). + + + + Copies the elements of the to an array, starting + at the specified array index. + + The one-dimensional array that is the destination of the elements copied from + the . The array must have zero-based + indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Replaces the internal table with a larger one. To prevent multiple threads from resizing the + table as a result of races, the table of buckets that was deemed too small is passed in as + an argument to GrowTable(). GrowTable() obtains a lock, and then checks whether the bucket + table has been replaced in the meantime or not. + + Reference to the bucket table that was deemed too small. + + + + Computes the bucket and lock number for a particular key. + + + + + Acquires all locks for this hash table, and increments locksAcquired by the number + of locks that were successfully acquired. The locks are acquired in an increasing + order. + + + + + Acquires a contiguous range of locks for this hash table, and increments locksAcquired + by the number of locks that were successfully acquired. The locks are acquired in an + increasing order. + + + + + Releases a contiguous range of locks. + + + + + Gets a collection containing the keys in the dictionary. + + + + + Gets a collection containing the values in the dictionary. + + + + + A helper method for asserts. + + + + + Get the data array to be serialized + + + + + Construct the dictionary from a previously seiralized one + + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key. If the specified key is not found, a get + operation throws a + , and a set operation creates a new + element with the specified key. + is a null reference + (Nothing in Visual Basic). + The property is retrieved and + + does not exist in the collection. + + + + Gets the number of key/value pairs contained in the . + + The dictionary contains too many + elements. + The number of key/value paris contained in the . + Count has snapshot semantics and represents the number of items in the + at the moment when Count was accessed. + + + + Gets a value that indicates whether the is empty. + + true if the is empty; otherwise, + false. + + + + Gets a collection containing the keys in the . + + An containing the keys in the + . + + + + Gets a collection containing the values in the . + + An containing the values in + the + . + + + + Gets a value indicating whether the dictionary is read-only. + + true if the is + read-only; otherwise, false. For , this property always returns + false. + + + + Gets a value indicating whether the has a fixed size. + + true if the has a + fixed size; otherwise, false. For , this property always + returns false. + + + + Gets a value indicating whether the is read-only. + + true if the is + read-only; otherwise, false. For , this property always + returns false. + + + + Gets an containing the keys of the . + + An containing the keys of the . + + + + Gets an containing the values in the . + + An containing the values in the . + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key, or a null reference (Nothing in Visual Basic) + if is not in the dictionary or is of a type that is + not assignable to the key type of the . + is a null reference + (Nothing in Visual Basic). + + A value is being assigned, and is of a type that is not assignable to the + key type of the . -or- A value is being + assigned, and is of a type that is not assignable to the value type + of the + + + + + Gets a value indicating whether access to the is + synchronized with the SyncRoot. + + true if access to the is synchronized + (thread safe); otherwise, false. For , this property always + returns false. + + + + Gets an object that can be used to synchronize access to the . This property is not supported. + + The SyncRoot property is not supported. + + + + The number of concurrent writes for which to optimize by default. + + + + + A node in a singly-linked list representing a particular hash table bucket. + + + + + A private class to represent enumeration over the dictionary that implements the + IDictionaryEnumerator interface. + + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + + An interface similar to the one added in .NET 4.0. + + + + The exception that is thrown in a thread upon cancellation of an operation that the thread was executing. + + + Initializes the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + Initializes the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + A cancellation token associated with the operation that was canceled. + + + Gets a token associated with the operation that was canceled. + + + + A dummy replacement for the .NET internal class StackCrawlMark. + + + + + Propogates notification that operations should be canceled. + + + + A may be created directly in an unchangeable canceled or non-canceled state + using the CancellationToken's constructors. However, to have a CancellationToken that can change + from a non-canceled to a canceled state, + CancellationTokenSource must be used. + CancellationTokenSource exposes the associated CancellationToken that may be canceled by the source through its + Token property. + + + Once canceled, a token may not transition to a non-canceled state, and a token whose + is false will never change to one that can be canceled. + + + All members of this struct are thread-safe and may be used concurrently from multiple threads. + + + + + + Internal constructor only a CancellationTokenSource should create a CancellationToken + + + + + Initializes the CancellationToken. + + + The canceled state for the token. + + + Tokens created with this constructor will remain in the canceled state specified + by the parameter. If is false, + both and will be false. + If is true, + both and will be true. + + + + + Registers a delegate that will be called when this CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Determines whether the current CancellationToken instance is equal to the + specified token. + + The other CancellationToken to which to compare this + instance. + True if the instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other object to which to compare this instance. + True if is a CancellationToken + and if the two instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + An associated CancellationTokenSource has been disposed. + + + + Serves as a hash function for a CancellationToken. + + A hash code for the current CancellationToken instance. + + + + Determines whether two CancellationToken instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Determines whether two CancellationToken instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Throws a OperationCanceledException if + this token has had cancellation requested. + + + This method provides functionality equivalent to: + + if (token.IsCancellationRequested) + throw new OperationCanceledException(token); + + + The token has had cancellation requested. + The associated CancellationTokenSource has been disposed. + + + + Returns an empty CancellationToken value. + + + The value returned by this property will be non-cancelable by default. + + + + + Gets whether cancellation has been requested for this token. + + Whether cancellation has been requested for this token. + + + This property indicates whether cancellation has been requested for this token, + either through the token initially being construted in a canceled state, or through + calling Cancel + on the token's associated . + + + If this property is true, it only guarantees that cancellation has been requested. + It does not guarantee that every registered handler + has finished executing, nor that cancellation requests have finished propagating + to all registered handlers. Additional synchronization may be required, + particularly in situations where related objects are being canceled concurrently. + + + + + + Gets whether this token is capable of being in the canceled state. + + + If CanBeCanceled returns false, it is guaranteed that the token will never transition + into a canceled state, meaning that will never + return true. + + + + + Gets a that is signaled when the token is canceled. + + Accessing this property causes a WaitHandle + to be instantiated. It is preferable to only use this property when necessary, and to then + dispose the associated instance at the earliest opportunity (disposing + the source will dispose of this allocated handle). The handle should not be closed or disposed directly. + + The associated CancellationTokenSource has been disposed. + + + + Represents a callback delegate that has been registered with a CancellationToken. + + + To unregister a callback, dispose the corresponding Registration instance. + + + + + Attempts to deregister the item. If it's already being run, this may fail. + Entails a full memory fence. + + True if the callback was found and deregistered, false otherwise. + + + + Disposes of the registration and unregisters the target callback from the associated + CancellationToken. + If the target callback is currently executing this method will wait until it completes, except + in the degenerate cases where a callback method deregisters itself. + + + + + Determines whether two CancellationTokenRegistration + instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + + + + Determines whether two CancellationTokenRegistration instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + + + + Determines whether the current CancellationTokenRegistration instance is equal to the + specified . + + The other object to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other CancellationTokenRegistration to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Serves as a hash function for a CancellationTokenRegistration.. + + A hash code for the current CancellationTokenRegistration instance. + + + + Signals to a that it should be canceled. + + + + is used to instantiate a + (via the source's Token property) + that can be handed to operations that wish to be notified of cancellation or that can be used to + register asynchronous operations for cancellation. That token may have cancellation requested by + calling to the source's Cancel + method. + + + All members of this class, except Dispose, are thread-safe and may be used + concurrently from multiple threads. + + + + + The ID of the thread currently executing the main body of CTS.Cancel() + this helps us to know if a call to ctr.Dispose() is running 'within' a cancellation callback. + This is updated as we move between the main thread calling cts.Cancel() and any syncContexts that are used to + actually run the callbacks. + + + + Initializes the . + + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + However, this overload of Cancel will aggregate any exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + If is true, an exception will immediately propagate out of the + call to Cancel, preventing the remaining callbacks and cancelable operations from being processed. + If is false, this overload will aggregate any + exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + Specifies whether exceptions should immediately propagate. + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Releases the resources used by this . + + + This method is not thread-safe for any other concurrent calls. + + + + + Throws an exception if the source has been disposed. + + + + + InternalGetStaticSource() + + Whether the source should be set. + A static source to be shared among multiple tokens. + + + + Registers a callback object. If cancellation has already occurred, the + callback will have been run by the time this method returns. + + + + + + + + + + Invoke the Canceled event. + + + The handlers are invoked synchronously in LIFO order. + + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The first CancellationToken to observe. + The second CancellationToken to observe. + A CancellationTokenSource that is linked + to the source tokens. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The CancellationToken instances to observe. + A CancellationTokenSource that is linked + to the source tokens. + is null. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Gets whether cancellation has been requested for this CancellationTokenSource. + + Whether cancellation has been requested for this CancellationTokenSource. + + + This property indicates whether cancellation has been requested for this token source, such as + due to a call to its + Cancel method. + + + If this property returns true, it only guarantees that cancellation has been requested. It does not + guarantee that every handler registered with the corresponding token has finished executing, nor + that cancellation requests have finished propagating to all registered handlers. Additional + synchronization may be required, particularly in situations where related objects are being + canceled concurrently. + + + + + + A simple helper to determine whether cancellation has finished. + + + + + A simple helper to determine whether disposal has occured. + + + + + The ID of the thread that is running callbacks. + + + + + Gets the CancellationToken + associated with this . + + The CancellationToken + associated with this . + The token source has been + disposed. + + + + + + + + + + + + + + The currently executing callback + + + + + A helper class for collating the various bits of information required to execute + cancellation callbacks. + + + + + InternalExecuteCallbackSynchronously_GeneralPath + This will be called on the target synchronization context, however, we still need to restore the required execution context + + + + + A sparsely populated array. Elements can be sparse and some null, but this allows for + lock-free additions and growth, and also for constant time removal (by nulling out). + + The kind of elements contained within. + + + + Allocates a new array with the given initial size. + + How many array slots to pre-allocate. + + + + Adds an element in the first available slot, beginning the search from the tail-to-head. + If no slots are available, the array is grown. The method doesn't return until successful. + + The element to add. + Information about where the add happened, to enable O(1) deregistration. + + + + The tail of the doubly linked list. + + + + + A struct to hold a link to the exact spot in an array an element was inserted, enabling + constant time removal later on. + + + + + A fragment of a sparsely populated array, doubly linked. + + The kind of elements contained within. + + + + Provides lazy initialization routines. + + + These routines avoid needing to allocate a dedicated, lazy-initialization instance, instead using + references to ensure targets have been initialized as they are accessed. + + + + + Initializes a target reference type with the type's default constructor if the target has not + already been initialized. + + The refence type of the reference to be initialized. + A reference of type to initialize if it has not + already been initialized. + The initialized reference of type . + Type does not have a default + constructor. + + Permissions to access the constructor of type were missing. + + + + This method may only be used on reference types. To ensure initialization of value + types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initializes a target reference type using the specified function if it has not already been + initialized. + + The reference type of the reference to be initialized. + The reference of type to initialize if it has not + already been initialized. + The invoked to initialize the + reference. + The initialized reference of type . + Type does not have a + default constructor. + returned + null. + + + This method may only be used on reference types, and may + not return a null reference (Nothing in Visual Basic). To ensure initialization of value types or + to allow null reference types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initialize the target using the given delegate (slow path). + + The reference type of the reference to be initialized. + The variable that need to be initialized + The delegate that will be executed to initialize the target + The initialized variable + + + + Initializes a target reference or value type with its default constructor if it has not already + been initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The initialized value of type . + + + + Initializes a target reference or value type with a specified function if it has not already been + initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The invoked to initialize the + reference or value. + The initialized value of type . + + + + Ensure the target is initialized and return the value (slow path). This overload permits nulls + and also works for value type targets. Uses the supplied function to create the value. + + The type of target. + A reference to the target to be initialized. + A reference to a location tracking whether the target has been initialized. + A reference to a location containing a mutual exclusive lock. + + The to invoke in order to produce the lazily-initialized value. + + The initialized object. + + + + Provides a slimmed down version of . + + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads, with the exception of Dispose, which + must only be used when all other operations on the have + completed, and Reset, which should only be used when no other threads are + accessing the event. + + + + + Initializes a new instance of the + class with an initial state of nonsignaled. + + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled. + + true to set the initial state signaled; false to set the initial state + to nonsignaled. + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled and a specified + spin count. + + true to set the initial state to signaled; false to set the initial state + to nonsignaled. + The number of spin waits that will occur before falling back to a true + wait. + is less than + 0 or greater than the maximum allowed value. + + + + Initializes the internal state of the event. + + Whether the event is set initially or not. + The spin count that decides when the event will block. + + + + Helper to ensure the lock object is created before first use. + + + + + This method lazily initializes the event object. It uses CAS to guarantee that + many threads racing to call this at once don't result in more than one event + being stored and used. The event will be signaled or unsignaled depending on + the state of the thin-event itself, with synchronization taken into account. + + True if a new event was created and stored, false otherwise. + + + + Sets the state of the event to signaled, which allows one or more threads waiting on the event to + proceed. + + + + + Private helper to actually perform the Set. + + Indicates whether we are calling Set() during cancellation. + The object has been canceled. + + + + Sets the state of the event to nonsignaled, which causes threads to block. + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Blocks the current thread until the current is set. + + + The maximum number of waiters has been exceeded. + + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current receives a signal, + while observing a . + + The to + observe. + + The maximum number of waiters has been exceeded. + + was + canceled. + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval. + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval, while observing a . + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + The to + observe. + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + was canceled. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval. + + The number of milliseconds to wait, or (-1) to wait indefinitely. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval, while observing a . + + The number of milliseconds to wait, or (-1) to wait indefinitely. + The to + observe. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + was canceled. + + + + Releases all resources used by the current instance of . + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + When overridden in a derived class, releases the unmanaged resources used by the + , and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Throw ObjectDisposedException if the MRES is disposed + + + + + Private helper method to wake up waiters when a cancellationToken gets canceled. + + + + + Private helper method for updating parts of a bit-string state value. + Mainly called from the IsSet and Waiters properties setters + + + Note: the parameter types must be int as CompareExchange cannot take a Uint + + The new value + The mask used to set the bits + + + + Private helper method - performs Mask and shift, particular helpful to extract a field from a packed word. + eg ExtractStatePortionAndShiftRight(0x12345678, 0xFF000000, 24) => 0x12, ie extracting the top 8-bits as a simple integer + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + + + Performs a Mask operation, but does not perform the shift. + This is acceptable for boolean values for which the shift is unnecessary + eg (val & Mask) != 0 is an appropriate way to extract a boolean rather than using + ((val & Mask) >> shiftAmount) == 1 + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + Helper function to measure and update the wait time + + The first time (in Ticks) observed when the wait started. + The orginal wait timeoutout in milliseconds. + The new wait time in milliseconds, -1 if the time expired, -2 if overflow in counters + has occurred. + + + + Gets the underlying object for this . + + The underlying event object fore this . + + Accessing this property forces initialization of an underlying event object if one hasn't + already been created. To simply wait on this , + the public Wait methods should be preferred. + + + + + Gets whether the event is set. + + true if the event has is set; otherwise, false. + + + + Gets the number of spin waits that will be occur before falling back to a true wait. + + + + + How many threads are waiting. + + + + + Provides support for spin-based waiting. + + + + encapsulates common spinning logic. On single-processor machines, yields are + always used instead of busy waits, and on computers with Intel™ processors employing Hyper-Threading™ + technology, it helps to prevent hardware thread starvation. SpinWait encapsulates a good mixture of + spinning and true yielding. + + + is a value type, which means that low-level code can utilize SpinWait without + fear of unnecessary allocation overheads. SpinWait is not generally useful for ordinary applications. + In most cases, you should use the synchronization classes provided by the .NET Framework, such as + . For most purposes where spin waiting is required, however, + the type should be preferred over the System.Threading.Thread.SpinWait method. + + + While SpinWait is designed to be used in concurrent applications, it is not designed to be + used from multiple threads concurrently. SpinWait's members are not thread-safe. If multiple + threads must spin, each should use its own instance of SpinWait. + + + + + + Performs a single spin. + + + This is typically called in a loop, and may change in behavior based on the number of times a + has been called thus far on this instance. + + + + + Resets the spin counter. + + + This makes and behave as though no calls + to had been issued on this instance. If a instance + is reused many times, it may be useful to reset it to avoid yielding too soon. + + + + + Spins until the specified condition is satisfied. + + A delegate to be executed over and over until it returns true. + The argument is null. + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + + A that represents the number of milliseconds to wait, + or a TimeSpan that represents -1 milliseconds to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a negative number + other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than + . + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + The number of milliseconds to wait, or (-1) to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a + negative number other than -1, which represents an infinite time-out. + + + + Gets the number of times has been called on this instance. + + + + + Gets whether the next call to will yield the processor, triggering a + forced context switch. + + Whether the next call to will yield the processor, triggering a + forced context switch. + + On a single-CPU machine, always yields the processor. On machines with + multiple CPUs, may yield after an unspecified number of calls. + + + + + A helper class to get the number of preocessors, it updates the numbers of processors every sampling interval + + + + + Gets the number of available processors + + + + + Gets whether the current machine has only a single processor. + + + + + Represents an asynchronous operation that produces a result at some time in the future. + + + The type of the result produced by this . + + + + instances may be created in a variety of ways. The most common approach is by + using the task's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs a function, the factory's StartNew + method may be used: + + // C# + var t = Task<int>.Factory.StartNew(() => GenerateResult()); + - or - + var t = Task.Factory.StartNew(() => GenerateResult()); + + ' Visual Basic + Dim t = Task<int>.Factory.StartNew(Function() GenerateResult()) + - or - + Dim t = Task.Factory.StartNew(Function() GenerateResult()) + + + + The class also provides constructors that initialize the task but that do not + schedule it for execution. For performance reasons, the StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + Start + method may then be used to schedule the task for execution at a later time. + + + All members of , except for + Dispose, are thread-safe + and may be used from multiple threads concurrently. + + + + + + Represents an asynchronous operation. + + + + instances may be created in a variety of ways. The most common approach is by + using the Task type's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs an action, the factory's StartNew + method may be used: + + // C# + var t = Task.Factory.StartNew(() => DoAction()); + + ' Visual Basic + Dim t = Task.Factory.StartNew(Function() DoAction()) + + + + The class also provides constructors that initialize the Task but that do not + schedule it for execution. For performance reasons, TaskFactory's StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + method may then be used to schedule the task for execution at a later time. + + + All members of , except for , are thread-safe + and may be used from multiple threads concurrently. + + + For operations that return values, the class + should be used. + + + For developers implementing custom debuggers, several internal and private members of Task may be + useful (these may change from release to release). The Int32 m_taskId field serves as the backing + store for the property, however accessing this field directly from a debugger may be + more efficient than accessing the same value through the property's getter method (the + s_taskIdCounter Int32 counter is used to retrieve the next available ID for a Task). Similarly, the + Int32 m_stateFlags field stores information about the current lifecycle stage of the Task, + information also accessible through the property. The m_action System.Object + field stores a reference to the Task's delegate, and the m_stateObject System.Object field stores the + async state passed to the Task by the developer. Finally, for debuggers that parse stack frames, the + InternalWait method serves a potential marker for when a Task is entering a wait operation. + + + + + + A type initializer that runs with the appropriate permissions. + + + + + Initializes a new with the specified action. + + The delegate that represents the code to execute in the Task. + The argument is null. + + + + Initializes a new with the specified action and CancellationToken. + + The delegate that represents the code to execute in the Task. + The CancellationToken + that will be assigned to the new Task. + The argument is null. + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and state. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + An internal constructor used by the factory methods on task and its descendent(s). + This variant does not capture the ExecutionContext; it is up to the caller to do that. + + An action to execute. + Optional state to pass to the action. + Parent of Task. + A CancellationToken for the task. + A task scheduler under which the task will run. + Options to control its execution. + Internal options to control its execution + + + + Common logic used by the following internal ctors: + Task() + Task(object action, object state, Task parent, TaskCreationOptions options, TaskScheduler taskScheduler) + + ASSUMES THAT m_creatingTask IS ALREADY SET. + + + Action for task to execute. + Object to which to pass to action (may be null) + Task scheduler on which to run thread (only used by continuation tasks). + A CancellationToken for the Task. + Options to customize behavior of Task. + Internal options to customize behavior of Task. + + + + Checks if we registered a CT callback during construction, and deregisters it. + This should be called when we know the registration isn't useful anymore. Specifically from Finish() if the task has completed + successfully or with an exception. + + + + + Captures the ExecutionContext so long as flow isn't suppressed. + + A stack crawl mark pointing to the frame of the caller. + + + + Internal function that will be called by a new child task to add itself to + the children list of the parent (this). + + Since a child task can only be created from the thread executing the action delegate + of this task, reentrancy is neither required nor supported. This should not be called from + anywhere other than the task construction/initialization codepaths. + + + + + Starts the , scheduling it for execution to the current TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time + will result in an exception. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Starts the , scheduling it for execution to the specified TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + The TaskScheduler with which to associate + and execute this task. + + + The argument is null. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the current TaskScheduler. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + Tasks executed with will be associated with the current TaskScheduler. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the scheduler provided. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + The parameter + is null. + The scheduler on which to attempt to run this task inline. + + + + Throws an exception if the task has been disposed, and hence can no longer be accessed. + + The task has been disposed. + + + + Sets the internal completion event. + + + + + Disposes the , releasing all of its unmanaged resources. + + + Unlike most of the members of , this method is not thread-safe. + Also, may only be called on a that is in one of + the final states: RanToCompletion, + Faulted, or + Canceled. + + + The exception that is thrown if the is not in + one of the final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Disposes the , releasing all of its unmanaged resources. + + + A Boolean value that indicates whether this method is being called due to a call to . + + + Unlike most of the members of , this method is not thread-safe. + + + + + Schedules the task for execution. + + If true, TASK_STATE_STARTED bit is turned on in + an atomic fashion, making sure that TASK_STATE_CANCELED does not get set + underneath us. If false, TASK_STATE_STARTED bit is OR-ed right in. This + allows us to streamline things a bit for StartNew(), where competing cancellations + are not a problem. + + + + Adds an exception to the list of exceptions this task has thrown. + + An object representing either an Exception or a collection of Exceptions. + + + + Returns a list of exceptions by aggregating the holder's contents. Or null if + no exceptions have been thrown. + + Whether to include a TCE if cancelled. + An aggregate exception, or null if no exceptions have been caught. + + + + Throws an aggregate exception if the task contains exceptions. + + + + + Checks whether this is an attached task, and whether we are being called by the parent task. + And sets the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag based on that. + + This is meant to be used internally when throwing an exception, and when WaitAll is gathering + exceptions for tasks it waited on. If this flag gets set, the implicit wait on children + will skip exceptions to prevent duplication. + + This should only be called when this task has completed with an exception + + + + + + Signals completion of this particular task. + + The bUserDelegateExecuted parameter indicates whether this Finish() call comes following the + full execution of the user delegate. + + If bUserDelegateExecuted is false, it mean user delegate wasn't invoked at all (either due to + a cancellation request, or because this task is a promise style Task). In this case, the steps + involving child tasks (i.e. WaitForChildren) will be skipped. + + + + + + FinishStageTwo is to be executed as soon as we known there are no more children to complete. + It can happen i) either on the thread that originally executed this task (if no children were spawned, or they all completed by the time this task's delegate quit) + ii) or on the thread that executed the last child. + + + + + Final stage of the task completion code path. Notifies the parent (if any) that another of its childre are done, and runs continuations. + This function is only separated out from FinishStageTwo because these two operations are also needed to be called from CancellationCleanupLogic() + + + + + This is called by children of this task when they are completed. + + + + + This is to be called just before the task does its final state transition. + It traverses the list of exceptional children, and appends their aggregate exceptions into this one's exception list + + + + + Special purpose Finish() entry point to be used when the task delegate throws a ThreadAbortedException + This makes a note in the state flags so that we avoid any costly synchronous operations in the finish codepath + such as inlined continuations + + + Indicates whether the ThreadAbortException was added to this task's exception holder. + This should always be true except for the case of non-root self replicating task copies. + + Whether the delegate was executed. + + + + Executes the task. This method will only be called once, and handles bookeeping associated with + self-replicating tasks, in addition to performing necessary exception marshaling. + + The task has already been disposed. + + + + IThreadPoolWorkItem override, which is the entry function for this task when the TP scheduler decides to run it. + + + + + + Outermost entry function to execute this task. Handles all aspects of executing a task on the caller thread. + Currently this is called by IThreadPoolWorkItem.ExecuteWorkItem(), and TaskManager.TryExecuteInline. + + + Performs atomic updates to prevent double execution. Should only be set to true + in codepaths servicing user provided TaskSchedulers. The ConcRT or ThreadPool schedulers don't need this. + + + + The actual code which invokes the body of the task. This can be overriden in derived types. + + + + + Alternate InnerInvoke prototype to be called from ExecuteSelfReplicating() so that + the Parallel Debugger can discover the actual task being invoked. + Details: Here, InnerInvoke is actually being called on the rootTask object while we are actually executing the + childTask. And the debugger needs to discover the childTask, so we pass that down as an argument. + The NoOptimization and NoInlining flags ensure that the childTask pointer is retained, and that this + function appears on the callstack. + + + + + + Performs whatever handling is necessary for an unhandled exception. Normally + this just entails adding the exception to the holder object. + + The exception that went unhandled. + + + + Waits for the to complete execution. + + + The was canceled -or- an exception was thrown during + the execution of the . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A to observe while waiting for the task to complete. + + + The was canceled. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + true if the completed execution within the allotted time; otherwise, + false. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the task to complete. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + The core wait function, which is only accesible internally. It's meant to be used in places in TPL code where + the current context is known or cached. + + + + + Cancels the . + + Indiactes whether we should only cancel non-invoked tasks. + For the default scheduler this option will only be serviced through TryDequeue. + For custom schedulers we also attempt an atomic state transition. + true if the task was successfully canceled; otherwise, false. + The + has been disposed. + + + + Sets the task's cancellation acknowledged flag. + + + + + Runs all of the continuations, as appropriate. + + + + + Helper function to determine whether the current task is in the state desired by the + continuation kind under evaluation. Three possibilities exist: the task failed with + an unhandled exception (OnFailed), the task was canceled before running (OnAborted), + or the task completed successfully (OnCompletedSuccessfully). Note that the last + one includes completing due to cancellation. + + The continuation options under evaluation. + True if the continuation should be run given the task's current state. + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + The that will be assigned to the new continuation task. + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Converts TaskContinuationOptions to TaskCreationOptions, and also does + some validity checking along the way. + + Incoming TaskContinuationOptions + Outgoing TaskCreationOptions + Outgoing InternalTaskOptions + + + + Registers the continuation and possibly runs it (if the task is already finished). + + The continuation task itself. + TaskScheduler with which to associate continuation task. + Restrictions on when the continuation becomes active. + + + + Waits for all of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The was canceled. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Waits for a set of handles in a STA-aware way. In other words, it will wait for each + of the events individually if we're on a STA thread, because MsgWaitForMultipleObjectsEx + can't do a true wait-all due to its hidden message queue event. This is not atomic, + of course, but we only wait on one-way (MRE) events anyway so this is OK. + + An array of wait handles to wait on. + The timeout to use during waits. + The cancellationToken that enables a wait to be canceled. + True if all waits succeeded, false if a timeout occurred. + + + + Internal WaitAll implementation which is meant to be used with small number of tasks, + optimized for Parallel.Invoke and other structured primitives. + + + + + This internal function is only meant to be called by WaitAll() + If the completed task is canceled or it has other exceptions, here we will add those + into the passed in exception list (which will be lazily initialized here). + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + The index of the completed task in the array argument. + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + The was canceled. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Gets a unique ID for this Task instance. + + + Task IDs are assigned on-demand and do not necessarily represent the order in the which Task + instances were created. + + + + + Returns the unique ID of the currently executing Task. + + + + + Gets the Task instance currently executing, or + null if none exists. + + + + + Gets the Exception that caused the Task to end prematurely. If the Task completed successfully or has not yet thrown any + exceptions, this will return null. + + + Tasks that throw unhandled exceptions store the resulting exception and propagate it wrapped in a + in calls to Wait + or in accesses to the property. Any exceptions not observed by the time + the Task instance is garbage collected will be propagated on the finalizer thread. + + + The Task + has been disposed. + + + + + Gets the TaskStatus of this Task. + + + + + Gets whether this Task instance has completed + execution due to being canceled. + + + A Task will complete in Canceled state either if its CancellationToken + was marked for cancellation before the task started executing, or if the task acknowledged the cancellation request on + its already signaled CancellationToken by throwing an + OperationCanceledException2 that bears the same + CancellationToken. + + + + + Returns true if this task has a cancellation token and it was signaled. + To be used internally in execute entry codepaths. + + + + + This internal property provides access to the CancellationToken that was set on the task + when it was constructed. + + + + + Gets whether this threw an OperationCanceledException2 while its CancellationToken was signaled. + + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Checks whether this task has been disposed. + + + + + Gets the TaskCreationOptions used + to create this task. + + + + + Gets a that can be used to wait for the task to + complete. + + + Using the wait functionality provided by + should be preferred over using for similar + functionality. + + + The has been disposed. + + + + + Gets the state object supplied when the Task was created, + or null if none was supplied. + + + + + Gets an indication of whether the asynchronous operation completed synchronously. + + true if the asynchronous operation completed synchronously; otherwise, false. + + + + Provides access to the TaskScheduler responsible for executing this Task. + + + + + Provides access to factory methods for creating and instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on TaskFactory. + + + + + Provides an event that can be used to wait for completion. + Only called by Wait*(), which means that we really do need to instantiate a completion event. + + + + + Determines whether this is the root task of a self replicating group. + + + + + Determines whether the task is a replica itself. + + + + + The property formerly known as IsFaulted. + + + + + Gets whether the completed due to an unhandled exception. + + + If is true, the Task's will be equal to + TaskStatus.Faulted, and its + property will be non-null. + + + + + Checks whether the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag is set, + This will only be used by the implicit wait to prevent double throws + + + + + + Checks whether the body was ever invoked. Used by task scheduler code to verify custom schedulers actually ran the task. + + + + + A structure to hold continuation information. + + + + + Constructs a new continuation structure. + + The task to be activated. + The continuation options. + The scheduler to use for the continuation. + + + + Invokes the continuation for the target completion task. + + The completed task. + Whether the continuation can be inlined. + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The argument is null. + + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The to be assigned to this task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and state. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Creates a new future object. + + The parent task for this future. + A function that yields the future value. + The task scheduler which will be used to execute the future. + The CancellationToken for the task. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Creates a new future object. + + The parent task for this future. + An object containing data to be used by the action; may be null. + A function that yields the future value. + The CancellationToken for the task. + The task scheduler which will be used to execute the future. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Evaluates the value selector of the Task which is passed in as an object and stores the result. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new task. + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . This task's completion state will be transferred to the task returned + from the ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be passed as + an argument this completed task. + + The that will be assigned to the new task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . + This task's completion state will be transferred to the task returned from the + ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Gets the result value of this . + + + The get accessor for this property ensures that the asynchronous operation is complete before + returning. Once the result of the computation is available, it is stored and will be returned + immediately on later calls to . + + + + + Provides access to factory methods for creating instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on the factory type. + + + + + Provides support for creating and scheduling + Task{TResult} objects. + + The type of the results that are available though + the Task{TResult} objects that are associated with + the methods in this class. + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task{TResult}.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the default configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory{TResult}. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory{TResult}. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The that will be assigned to the new task. + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory{TResult}. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory{TResult}. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory{TResult}. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents the current stage in the lifecycle of a . + + + + + The task has been initialized but has not yet been scheduled. + + + + + The task is waiting to be activated and scheduled internally by the .NET Framework infrastructure. + + + + + The task has been scheduled for execution but has not yet begun executing. + + + + + The task is running but has not yet completed. + + + + + The task has finished executing and is implicitly waiting for + attached child tasks to complete. + + + + + The task completed execution successfully. + + + + + The task acknowledged cancellation by throwing an OperationCanceledException2 with its own CancellationToken + while the token was in signaled state, or the task's CancellationToken was already signaled before the + task started executing. + + + + + The task completed due to an unhandled exception. + + + + + Specifies flags that control optional behavior for the creation and execution of tasks. + + + + + Specifies that the default behavior should be used. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides a hint to the + TaskScheduler that oversubscription may be + warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Task creation flags which are only used internally. + + + + Specifies "No internal task options" + + + Used to filter out internal vs. public task creation options. + + + Specifies that the task will be queued by the runtime before handing it over to the user. + This flag will be used to skip the cancellationtoken registration step, which is only meant for unstarted tasks. + + + + Specifies flags that control optional behavior for the creation and execution of continuation tasks. + + + + + Default = "Continue on any, no task options, run asynchronously" + Specifies that the default behavior should be used. Continuations, by default, will + be scheduled when the antecedent task completes, regardless of the task's final TaskStatus. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides + a hint to the TaskScheduler that + oversubscription may be warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Specifies that the continuation task should not be scheduled if its antecedent ran to completion. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled + exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent was canceled. This + option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent ran to + completion. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent threw an + unhandled exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent was canceled. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be executed synchronously. With this option + specified, the continuation will be run on the same thread that causes the antecedent task to + transition into its final state. If the antecedent is already complete when the continuation is + created, the continuation will run on the thread creating the continuation. Only very + short-running continuations should be executed synchronously. + + + + + Represents an exception used to communicate task cancellation. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + Initializes a new instance of the class + with a reference to the that has been canceled. + + A task that has been canceled. + + + + Gets the task associated with this exception. + + + It is permissible for no Task to be associated with a + , in which case + this property will return null. + + + + + Represents the producer side of a unbound to a + delegate, providing access to the consumer side through the property. + + + + It is often the case that a is desired to + represent another asynchronous operation. + TaskCompletionSource is provided for this purpose. It enables + the creation of a task that can be handed out to consumers, and those consumers can use the members + of the task as they would any other. However, unlike most tasks, the state of a task created by a + TaskCompletionSource is controlled explicitly by the methods on TaskCompletionSource. This enables the + completion of the external asynchronous operation to be propagated to the underlying Task. The + separation also ensures that consumers are not able to transition the state without access to the + corresponding TaskCompletionSource. + + + All members of are thread-safe + and may be used from multiple threads concurrently. + + + The type of the result value assocatied with this . + + + + Creates a . + + + + + Creates a + with the specified options. + + + The created + by this instance and accessible through its property + will be instantiated using the specified . + + The options to use when creating the underlying + . + + The represent options invalid for use + with a . + + + + + Creates a + with the specified state. + + The state to use as the underlying + 's AsyncState. + + + + Creates a with + the specified state and options. + + The options to use when creating the underlying + . + The state to use as the underlying + 's AsyncState. + + The represent options invalid for use + with a . + + + + + Attempts to transition the underlying + into the + Faulted + state. + + The exception to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + The was disposed. + + + + Attempts to transition the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + There are one or more null elements in . + The collection is empty. + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The exception to bind to this . + The argument is null. + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + The argument is null. + There are one or more null elements in . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Canceled + state. + + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + Canceled + state. + + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Gets the created + by this . + + + This property enables a consumer access to the that is controlled by this instance. + The , , + , and + methods (and their "Try" variants) on this instance all result in the relevant state + transitions on this underlying Task. + + + + + An exception holder manages a list of exceptions for one particular task. + It offers the ability to aggregate, but more importantly, also offers intrinsic + support for propagating unhandled exceptions that are never observed. It does + this by aggregating and throwing if the holder is ever GC'd without the holder's + contents ever having been requested (e.g. by a Task.Wait, Task.get_Exception, etc). + + + + + Creates a new holder; it will be registered for finalization. + + The task this holder belongs to. + + + + A finalizer that repropagates unhandled exceptions. + + + + + Add an exception to the internal list. This will ensure the holder is + in the proper state (handled/unhandled) depending on the list's contents. + + An exception object (either an Exception or an + IEnumerable{Exception}) to add to the list. + + + + A private helper method that ensures the holder is considered + unhandled, i.e. it is registered for finalization. + + + + + A private helper method that ensures the holder is considered + handled, i.e. it is not registered for finalization. + + Whether this is called from the finalizer thread. + + + + Allocates a new aggregate exception and adds the contents of the list to + it. By calling this method, the holder assumes exceptions to have been + "observed", such that the finalization check will be subsequently skipped. + + Whether this is being called from a finalizer. + An extra exception to be included (optionally). + The aggregate exception to throw. + + + + Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of + instances. + + + + + Creates a proxy Task that represents the + asynchronous operation of a Task{Task}. + + + It is often useful to be able to return a Task from a + Task{TResult}, where the inner Task represents work done as part of the outer Task{TResult}. However, + doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior. Unwrap + solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}. + + The Task{Task} to unwrap. + The exception that is thrown if the + argument is null. + A Task that represents the asynchronous operation of the provided Task{Task}. + + + + Creates a proxy Task{TResult} that represents the + asynchronous operation of a Task{Task{TResult}}. + + + It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult} + represents work done as part of the outer Task{TResult}. However, doing so results in a Task{Task{TResult}}, + which, if not dealt with carefully, could produce unexpected behavior. Unwrap solves this problem by + creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}. + + The Task{Task{TResult}} to unwrap. + The exception that is thrown if the + argument is null. + A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}. /// Unwraps a Task that returns another Task. + + + + Provides support for creating and scheduling + Tasks. + + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new task. + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Check validity of options passed to FromAsync method + + The options to be validated. + determines type of FromAsync method that called this method + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents an abstract scheduler for tasks. + + + + TaskScheduler acts as the extension point for all + pluggable scheduling logic. This includes mechanisms such as how to schedule a task for execution, and + how scheduled tasks should be exposed to debuggers. + + + All members of the abstract type are thread-safe + and may be used from multiple threads concurrently. + + + + + + Queues a Task to the scheduler. + + + + A class derived from TaskScheduler + implements this method to accept tasks being scheduled on the scheduler. + A typical implementation would store the task in an internal data structure, which would + be serviced by threads that would execute those tasks at some time in the future. + + + This method is only meant to be called by the .NET Framework and + should not be called directly by the derived class. This is necessary + for maintaining the consistency of the system. + + + The Task to be queued. + The argument is null. + + + + Determines whether the provided Task + can be executed synchronously in this call, and if it can, executes it. + + + + A class derived from TaskScheduler implements this function to + support inline execution of a task on a thread that initiates a wait on that task object. Inline + execution is optional, and the request may be rejected by returning false. However, better + scalability typically results the more tasks that can be inlined, and in fact a scheduler that + inlines too little may be prone to deadlocks. A proper implementation should ensure that a + request executing under the policies guaranteed by the scheduler can successfully inline. For + example, if a scheduler uses a dedicated thread to execute tasks, any inlining requests from that + thread should succeed. + + + If a scheduler decides to perform the inline execution, it should do so by calling to the base + TaskScheduler's + TryExecuteTask method with the provided task object, propagating + the return value. It may also be appropriate for the scheduler to remove an inlined task from its + internal data structures if it decides to honor the inlining request. Note, however, that under + some circumstances a scheduler may be asked to inline a task that was not previously provided to + it with the method. + + + The derived scheduler is responsible for making sure that the calling thread is suitable for + executing the given task as far as its own scheduling and execution policies are concerned. + + + The Task to be + executed. + A Boolean denoting whether or not task has previously been + queued. If this parameter is True, then the task may have been previously queued (scheduled); if + False, then the task is known not to have been queued, and this call is being made in order to + execute the task inline without queueing it. + A Boolean value indicating whether the task was executed inline. + The argument is + null. + The was already + executed. + + + + Generates an enumerable of Task instances + currently queued to the scheduler waiting to be executed. + + + + A class derived from implements this method in order to support + integration with debuggers. This method will only be invoked by the .NET Framework when the + debugger requests access to the data. The enumerable returned will be traversed by debugging + utilities to access the tasks currently queued to this scheduler, enabling the debugger to + provide a representation of this information in the user interface. + + + It is important to note that, when this method is called, all other threads in the process will + be frozen. Therefore, it's important to avoid synchronization with other threads that may lead to + blocking. If synchronization is necessary, the method should prefer to throw a + than to block, which could cause a debugger to experience delays. Additionally, this method and + the enumerable returned must not modify any globally visible state. + + + The returned enumerable should never be null. If there are currently no queued tasks, an empty + enumerable should be returned instead. + + + For developers implementing a custom debugger, this method shouldn't be called directly, but + rather this functionality should be accessed through the internal wrapper method + GetScheduledTasksForDebugger: + internal Task[] GetScheduledTasksForDebugger(). This method returns an array of tasks, + rather than an enumerable. In order to retrieve a list of active schedulers, a debugger may use + another internal method: internal static TaskScheduler[] GetTaskSchedulersForDebugger(). + This static method returns an array of all active TaskScheduler instances. + GetScheduledTasksForDebugger then may be used on each of these scheduler instances to retrieve + the list of scheduled tasks for each. + + + An enumerable that allows traversal of tasks currently queued to this scheduler. + + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Retrieves some thread static state that can be cached and passed to multiple + TryRunInline calls, avoiding superflous TLS fetches. + + A bag of TLS state (or null if none exists). + + + + Attempts to execute the target task synchronously. + + The task to run. + True if the task may have been previously queued, + false if the task was absolutely not previously queued. + The state retrieved from GetThreadStatics + True if it ran, false otherwise. + + + + Attempts to dequeue a Task that was previously queued to + this scheduler. + + The Task to be dequeued. + A Boolean denoting whether the argument was successfully dequeued. + The argument is null. + + + + Notifies the scheduler that a work item has made progress. + + + + + Initializes the . + + + + + Frees all resources associated with this scheduler. + + + + + Creates a + associated with the current . + + + All Task instances queued to + the returned scheduler will be executed through a call to the + Post method + on that context. + + + A associated with + the current SynchronizationContext, as + determined by SynchronizationContext.Current. + + + The current SynchronizationContext may not be used as a TaskScheduler. + + + + + Attempts to execute the provided Task + on this scheduler. + + + + Scheduler implementations are provided with Task + instances to be executed through either the method or the + method. When the scheduler deems it appropriate to run the + provided task, should be used to do so. TryExecuteTask handles all + aspects of executing a task, including action invocation, exception handling, state management, + and lifecycle control. + + + must only be used for tasks provided to this scheduler by the .NET + Framework infrastructure. It should not be used to execute arbitrary tasks obtained through + custom mechanisms. + + + + A Task object to be executed. + + The is not associated with this scheduler. + + A Boolean that is true if was successfully executed, false if it + was not. A common reason for execution failure is that the task had previously been executed or + is in the process of being executed by another thread. + + + + Provides an array of all queued Task instances + for the debugger. + + + The returned array is populated through a call to . + Note that this function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of Task instances. + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Provides an array of all active TaskScheduler + instances for the debugger. + + + This function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of TaskScheduler instances. + + + + Registers a new TaskScheduler instance in the global collection of schedulers. + + + + + Removes a TaskScheduler instance from the global collection of schedulers. + + + + + Indicates the maximum concurrency level this + is able to support. + + + + + Indicates whether this is a custom scheduler, in which case the safe code paths will be taken upon task entry + using a CAS to transition from queued state to executing. + + + + + Gets the default TaskScheduler instance. + + + + + Gets the TaskScheduler + associated with the currently executing task. + + + When not called from within a task, will return the scheduler. + + + + + Gets the unique ID for this . + + + + + Occurs when a faulted 's unobserved exception is about to trigger exception escalation + policy, which, by default, would terminate the process. + + + This AppDomain-wide event provides a mechanism to prevent exception + escalation policy (which, by default, terminates the process) from triggering. + Each handler is passed a + instance, which may be used to examine the exception and to mark it as observed. + + + + + Nested class that provides debugger view for TaskScheduler + + + + Default thread pool scheduler. + + + + A TaskScheduler implementation that executes all tasks queued to it through a call to + on the + that its associated with. The default constructor for this class binds to the current + + + + + Constructs a SynchronizationContextTaskScheduler associated with + + This constructor expects to be set. + + + + Implemetation of for this scheduler class. + + Simply posts the tasks to be executed on the associated . + + + + + + Implementation of for this scheduler class. + + The task will be executed inline only if the call happens within + the associated . + + + + + + + Implementes the property for + this scheduler class. + + By default it returns 1, because a based + scheduler only supports execution on a single thread. + + + + + Provides data for the event that is raised when a faulted 's + exception goes unobserved. + + + The Exception property is used to examine the exception without marking it + as observed, whereas the method is used to mark the exception + as observed. Marking the exception as observed prevents it from triggering exception escalation policy + which, by default, terminates the process. + + + + + Initializes a new instance of the class + with the unobserved exception. + + The Exception that has gone unobserved. + + + + Marks the as "observed," thus preventing it + from triggering exception escalation policy which, by default, terminates the process. + + + + + Gets whether this exception has been marked as "observed." + + + + + The Exception that went unobserved. + + + + + Represents an exception used to communicate an invalid operation by a + . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class using the default error message and a reference to the inner exception that is the cause of + this exception. + + The exception that is the cause of the current exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp71+wpa81/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Threading.Tasks.dll new file mode 100644 index 0000000..a089d47 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Threading.Tasks.xml new file mode 100644 index 0000000..5375fda --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/System.Threading.Tasks.xml @@ -0,0 +1,8969 @@ + + + + System.Threading.Tasks + + + + Represents one or more errors that occur during application execution. + + is used to consolidate multiple failures into a single, throwable + exception object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with + a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + The argument + is null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Allocates a new aggregate exception with the specified message and list of inner exceptions. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Returns the that is the root cause of this exception. + + + + + Invokes a handler on each contained by this . + + The predicate to execute for each exception. The predicate accepts as an + argument the to be processed and returns a Boolean to indicate + whether the exception was handled. + + Each invocation of the returns true or false to indicate whether the + was handled. After all invocations, if any exceptions went + unhandled, all unhandled exceptions will be put into a new + which will be thrown. Otherwise, the method simply returns. If any + invocations of the throws an exception, it will halt the processing + of any more exceptions and immediately propagate the thrown exception as-is. + + An exception contained by this was not handled. + The argument is + null. + + + + Flattens an instances into a single, new instance. + + A new, flattened . + + If any inner exceptions are themselves instances of + , this method will recursively flatten all of them. The + inner exceptions returned in the new + will be the union of all of the the inner exceptions from exception tree rooted at the provided + instance. + + + + + Creates and returns a string representation of the current . + + A string representation of the current exception. + + + + Gets a read-only collection of the instances that caused the + current exception. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to One or more errors occurred.. + + + + + Looks up a localized string similar to An element of innerExceptions was null.. + + + + + Looks up a localized string similar to {0}{1}---> (Inner Exception #{2}) {3}{4}{5}. + + + + + Looks up a localized string similar to No tokens were supplied.. + + + + + Looks up a localized string similar to The CancellationTokenSource associated with this CancellationToken has been disposed.. + + + + + Looks up a localized string similar to The CancellationTokenSource has been disposed.. + + + + + Looks up a localized string similar to The SyncRoot property may not be used for the synchronization of concurrent collections.. + + + + + Looks up a localized string similar to The array is multidimensional, or the type parameter for the set cannot be cast automatically to the type of the destination array.. + + + + + Looks up a localized string similar to The index is equal to or greater than the length of the array, or the number of elements in the dictionary is greater than the available space from index to the end of the destination array.. + + + + + Looks up a localized string similar to The capacity argument must be greater than or equal to zero.. + + + + + Looks up a localized string similar to The concurrencyLevel argument must be positive.. + + + + + Looks up a localized string similar to The index argument is less than zero.. + + + + + Looks up a localized string similar to TKey is a reference type and item.Key is null.. + + + + + Looks up a localized string similar to The key already existed in the dictionary.. + + + + + Looks up a localized string similar to The source argument contains duplicate keys.. + + + + + Looks up a localized string similar to The key was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The value was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The lazily-initialized type does not have a public, parameterless constructor.. + + + + + Looks up a localized string similar to ValueFactory returned null.. + + + + + Looks up a localized string similar to The spinCount argument must be in the range 0 to {0}, inclusive.. + + + + + Looks up a localized string similar to There are too many threads currently waiting on the event. A maximum of {0} waiting threads are supported.. + + + + + Looks up a localized string similar to The event has been disposed.. + + + + + Looks up a localized string similar to The operation was canceled.. + + + + + Looks up a localized string similar to The condition argument is null.. + + + + + Looks up a localized string similar to The timeout must represent a value between -1 and Int32.MaxValue, inclusive.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions combined LongRunning and ExecuteSynchronously. Synchronous continuations should not be long running.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions excluded all continuation kinds.. + + + + + Looks up a localized string similar to (Internal)An attempt was made to create a LongRunning SelfReplicating task.. + + + + + Looks up a localized string similar to The value needs to translate in milliseconds to -1 (signifying an infinite timeout), 0 or a positive integer less than or equal to Int32.MaxValue.. + + + + + Looks up a localized string similar to The value needs to be either -1 (signifying an infinite timeout), 0 or a positive integer.. + + + + + Looks up a localized string similar to A task may only be disposed if it is in a completion state (RanToCompletion, Faulted or Canceled).. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.LongRunning in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.PreferFairness in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating in calls to FromAsync.. + + + + + Looks up a localized string similar to FromAsync was called with a TaskManager that had already shut down.. + + + + + Looks up a localized string similar to The tasks argument contains no tasks.. + + + + + Looks up a localized string similar to It is invalid to exclude specific continuation kinds for continuations off of multiple tasks.. + + + + + Looks up a localized string similar to The tasks argument included a null value.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that was already started.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a continuation task.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task not bound to a delegate, such as the task returned from an asynchronous method.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that has already completed.. + + + + + Looks up a localized string similar to Start may not be called on a task that was already started.. + + + + + Looks up a localized string similar to Start may not be called on a continuation task.. + + + + + Looks up a localized string similar to Start may not be called on a task with null action.. + + + + + Looks up a localized string similar to Start may not be called on a promise-style task.. + + + + + Looks up a localized string similar to Start may not be called on a task that has completed.. + + + + + Looks up a localized string similar to The task has been disposed.. + + + + + Looks up a localized string similar to The tasks array included at least one null element.. + + + + + Looks up a localized string similar to The awaited task has not yet completed.. + + + + + Looks up a localized string similar to A task was canceled.. + + + + + Looks up a localized string similar to The exceptions collection was empty.. + + + + + Looks up a localized string similar to The exceptions collection included at least one null element.. + + + + + Looks up a localized string similar to A Task's exception(s) were not observed either by Waiting on the Task or accessing its Exception property. As a result, the unobserved exception was rethrown by the finalizer thread.. + + + + + Looks up a localized string similar to (Internal)Expected an Exception or an IEnumerable<Exception>. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was already executed.. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was previously queued to a different TaskScheduler.. + + + + + Looks up a localized string similar to The current SynchronizationContext may not be used as a TaskScheduler.. + + + + + Looks up a localized string similar to The TryExecuteTaskInline call to the underlying scheduler succeeded, but the task body was not invoked.. + + + + + Looks up a localized string similar to An exception was thrown by a TaskScheduler.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating for a Task<TResult>.. + + + + + Looks up a localized string similar to {Not yet computed}. + + + + + Looks up a localized string similar to A task's Exception may only be set directly if the task was created without a function.. + + + + + Looks up a localized string similar to An attempt was made to transition a task to a final state when it had already completed.. + + + + + Represents a thread-safe collection of keys and values. + + The type of the keys in the dictionary. + The type of the values in the dictionary. + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads. + + + + + Initializes a new instance of the + class that is empty, has the default concurrency level, has the default initial capacity, and + uses the default comparer for the key type. + + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the default + comparer for the key type. + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + is + less than 1. + is less than + 0. + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency + level, has the default initial capacity, and uses the default comparer for the key type. + + The whose elements are copied to + the new + . + is a null reference + (Nothing in Visual Basic). + contains one or more + duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the specified + . + + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency level, has the default + initial capacity, and uses the specified + . + + The whose elements are copied to + the new + . + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). -or- + is a null reference (Nothing in Visual Basic). + + + + + Initializes a new instance of the + class that contains elements copied from the specified , + has the specified concurrency level, has the specified initial capacity, and uses the specified + . + + The estimated number of threads that will update the + concurrently. + The whose elements are copied to the new + . + The implementation to use + when comparing keys. + + is a null reference (Nothing in Visual Basic). + -or- + is a null reference (Nothing in Visual Basic). + + + is less than 1. + + contains one or more duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level, has the specified initial capacity, and + uses the specified . + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + The + implementation to use when comparing keys. + + is less than 1. -or- + is less than 0. + + is a null reference + (Nothing in Visual Basic). + + + + Attempts to add the specified key and value to the . + + The key of the element to add. + The value of the element to add. The value can be a null reference (Nothing + in Visual Basic) for reference types. + true if the key/value pair was added to the + successfully; otherwise, false. + is null reference + (Nothing in Visual Basic). + The + contains too many elements. + + + + Determines whether the contains the specified + key. + + The key to locate in the . + true if the contains an element with + the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Attempts to remove and return the the value with the specified key from the + . + + The key of the element to remove and return. + When this method returns, contains the object removed from the + or the default value of + if the operation failed. + true if an object was removed successfully; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Removes the specified key from the dictionary if it exists and returns its associated value. + If matchValue flag is set, the key will be removed only if is associated with a particular + value. + + The key to search for and remove if it exists. + The variable into which the removed value, if found, is stored. + Whether removal of the key is conditional on its value. + The conditional value to compare against if is true + + + + + Attempts to get the value associated with the specified key from the . + + The key of the value to get. + When this method returns, contains the object from + the + with the spedified key or the default value of + , if the operation failed. + true if the key was found in the ; + otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Compares the existing value for the specified key with a specified value, and if they’re equal, + updates the key with a third value. + + The key whose value is compared with and + possibly replaced. + The value that replaces the value of the element with if the comparison results in equality. + The value that is compared to the value of the element with + . + true if the value with was equal to and replaced with ; otherwise, + false. + is a null + reference. + + + + Removes all keys and values from the . + + + + + Copies the elements of the to an array of + type , starting at the + specified array index. + + The one-dimensional array of type + that is the destination of the elements copied from the . The array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Copies the key and value pairs stored in the to a + new array. + + A new array containing a snapshot of key and value pairs copied from the . + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToPairs. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToEntries. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToObjects. + + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Shared internal implementation for inserts and updates. + If key exists, we always return false; and if updateIfExists == true we force update with value; + If key doesn't exist, we always add value and return true; + + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + The function used to generate a value for the key + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value for the key as returned by valueFactory + if the key was not in the dictionary. + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + the value to be added, if the key does not already exist + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value if the key was not in the dictionary. + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The function used to generate a value for an absent key + The function used to generate a new value for an existing key + based on the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The value to be added for an absent key + The function used to generate a new value for an existing key based on + the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds the specified key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + An element with the same key already exists in the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + true if the element is successfully remove; otherwise false. This method also returns + false if + was not found in the original . + + is a null reference + (Nothing in Visual Basic). + + + + Adds the specified value to the + with the specified key. + + The + structure representing the key and value to add to the . + The of is null. + The + contains too many elements. + An element with the same key already exists in the + + + + + Determines whether the + contains a specific key and value. + + The + structure to locate in the . + true if the is found in the ; otherwise, false. + + + + Removes a key and value from the dictionary. + + The + structure representing the key and value to remove from the . + true if the key and value represented by is successfully + found and removed; otherwise, false. + The Key property of is a null reference (Nothing in Visual Basic). + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Adds the specified key and value to the dictionary. + + The object to use as the key. + The object to use as the value. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + is of a type that is not assignable to the key type of the . -or- + is of a type that is not assignable to , + the type of values in the . + -or- A value with the same key already exists in the . + + + + + Gets whether the contains an + element with the specified key. + + The key to locate in the . + true if the contains + an element with the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + Provides an for the + . + An for the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + is a null reference + (Nothing in Visual Basic). + + + + Copies the elements of the to an array, starting + at the specified array index. + + The one-dimensional array that is the destination of the elements copied from + the . The array must have zero-based + indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Replaces the internal table with a larger one. To prevent multiple threads from resizing the + table as a result of races, the table of buckets that was deemed too small is passed in as + an argument to GrowTable(). GrowTable() obtains a lock, and then checks whether the bucket + table has been replaced in the meantime or not. + + Reference to the bucket table that was deemed too small. + + + + Computes the bucket and lock number for a particular key. + + + + + Acquires all locks for this hash table, and increments locksAcquired by the number + of locks that were successfully acquired. The locks are acquired in an increasing + order. + + + + + Acquires a contiguous range of locks for this hash table, and increments locksAcquired + by the number of locks that were successfully acquired. The locks are acquired in an + increasing order. + + + + + Releases a contiguous range of locks. + + + + + Gets a collection containing the keys in the dictionary. + + + + + Gets a collection containing the values in the dictionary. + + + + + A helper method for asserts. + + + + + Get the data array to be serialized + + + + + Construct the dictionary from a previously seiralized one + + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key. If the specified key is not found, a get + operation throws a + , and a set operation creates a new + element with the specified key. + is a null reference + (Nothing in Visual Basic). + The property is retrieved and + + does not exist in the collection. + + + + Gets the number of key/value pairs contained in the . + + The dictionary contains too many + elements. + The number of key/value paris contained in the . + Count has snapshot semantics and represents the number of items in the + at the moment when Count was accessed. + + + + Gets a value that indicates whether the is empty. + + true if the is empty; otherwise, + false. + + + + Gets a collection containing the keys in the . + + An containing the keys in the + . + + + + Gets a collection containing the values in the . + + An containing the values in + the + . + + + + Gets a value indicating whether the dictionary is read-only. + + true if the is + read-only; otherwise, false. For , this property always returns + false. + + + + Gets a value indicating whether the has a fixed size. + + true if the has a + fixed size; otherwise, false. For , this property always + returns false. + + + + Gets a value indicating whether the is read-only. + + true if the is + read-only; otherwise, false. For , this property always + returns false. + + + + Gets an containing the keys of the . + + An containing the keys of the . + + + + Gets an containing the values in the . + + An containing the values in the . + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key, or a null reference (Nothing in Visual Basic) + if is not in the dictionary or is of a type that is + not assignable to the key type of the . + is a null reference + (Nothing in Visual Basic). + + A value is being assigned, and is of a type that is not assignable to the + key type of the . -or- A value is being + assigned, and is of a type that is not assignable to the value type + of the + + + + + Gets a value indicating whether access to the is + synchronized with the SyncRoot. + + true if access to the is synchronized + (thread safe); otherwise, false. For , this property always + returns false. + + + + Gets an object that can be used to synchronize access to the . This property is not supported. + + The SyncRoot property is not supported. + + + + The number of concurrent writes for which to optimize by default. + + + + + A node in a singly-linked list representing a particular hash table bucket. + + + + + A private class to represent enumeration over the dictionary that implements the + IDictionaryEnumerator interface. + + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + + An interface similar to the one added in .NET 4.0. + + + + The exception that is thrown in a thread upon cancellation of an operation that the thread was executing. + + + Initializes the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + Initializes the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + A cancellation token associated with the operation that was canceled. + + + Gets a token associated with the operation that was canceled. + + + + A dummy replacement for the .NET internal class StackCrawlMark. + + + + + Propogates notification that operations should be canceled. + + + + A may be created directly in an unchangeable canceled or non-canceled state + using the CancellationToken's constructors. However, to have a CancellationToken that can change + from a non-canceled to a canceled state, + CancellationTokenSource must be used. + CancellationTokenSource exposes the associated CancellationToken that may be canceled by the source through its + Token property. + + + Once canceled, a token may not transition to a non-canceled state, and a token whose + is false will never change to one that can be canceled. + + + All members of this struct are thread-safe and may be used concurrently from multiple threads. + + + + + + Internal constructor only a CancellationTokenSource should create a CancellationToken + + + + + Initializes the CancellationToken. + + + The canceled state for the token. + + + Tokens created with this constructor will remain in the canceled state specified + by the parameter. If is false, + both and will be false. + If is true, + both and will be true. + + + + + Registers a delegate that will be called when this CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Determines whether the current CancellationToken instance is equal to the + specified token. + + The other CancellationToken to which to compare this + instance. + True if the instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other object to which to compare this instance. + True if is a CancellationToken + and if the two instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + An associated CancellationTokenSource has been disposed. + + + + Serves as a hash function for a CancellationToken. + + A hash code for the current CancellationToken instance. + + + + Determines whether two CancellationToken instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Determines whether two CancellationToken instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Throws a OperationCanceledException if + this token has had cancellation requested. + + + This method provides functionality equivalent to: + + if (token.IsCancellationRequested) + throw new OperationCanceledException(token); + + + The token has had cancellation requested. + The associated CancellationTokenSource has been disposed. + + + + Returns an empty CancellationToken value. + + + The value returned by this property will be non-cancelable by default. + + + + + Gets whether cancellation has been requested for this token. + + Whether cancellation has been requested for this token. + + + This property indicates whether cancellation has been requested for this token, + either through the token initially being construted in a canceled state, or through + calling Cancel + on the token's associated . + + + If this property is true, it only guarantees that cancellation has been requested. + It does not guarantee that every registered handler + has finished executing, nor that cancellation requests have finished propagating + to all registered handlers. Additional synchronization may be required, + particularly in situations where related objects are being canceled concurrently. + + + + + + Gets whether this token is capable of being in the canceled state. + + + If CanBeCanceled returns false, it is guaranteed that the token will never transition + into a canceled state, meaning that will never + return true. + + + + + Gets a that is signaled when the token is canceled. + + Accessing this property causes a WaitHandle + to be instantiated. It is preferable to only use this property when necessary, and to then + dispose the associated instance at the earliest opportunity (disposing + the source will dispose of this allocated handle). The handle should not be closed or disposed directly. + + The associated CancellationTokenSource has been disposed. + + + + Represents a callback delegate that has been registered with a CancellationToken. + + + To unregister a callback, dispose the corresponding Registration instance. + + + + + Attempts to deregister the item. If it's already being run, this may fail. + Entails a full memory fence. + + True if the callback was found and deregistered, false otherwise. + + + + Disposes of the registration and unregisters the target callback from the associated + CancellationToken. + If the target callback is currently executing this method will wait until it completes, except + in the degenerate cases where a callback method deregisters itself. + + + + + Determines whether two CancellationTokenRegistration + instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + + + + Determines whether two CancellationTokenRegistration instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + + + + Determines whether the current CancellationTokenRegistration instance is equal to the + specified . + + The other object to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other CancellationTokenRegistration to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Serves as a hash function for a CancellationTokenRegistration.. + + A hash code for the current CancellationTokenRegistration instance. + + + + Signals to a that it should be canceled. + + + + is used to instantiate a + (via the source's Token property) + that can be handed to operations that wish to be notified of cancellation or that can be used to + register asynchronous operations for cancellation. That token may have cancellation requested by + calling to the source's Cancel + method. + + + All members of this class, except Dispose, are thread-safe and may be used + concurrently from multiple threads. + + + + + The ID of the thread currently executing the main body of CTS.Cancel() + this helps us to know if a call to ctr.Dispose() is running 'within' a cancellation callback. + This is updated as we move between the main thread calling cts.Cancel() and any syncContexts that are used to + actually run the callbacks. + + + + Initializes the . + + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + However, this overload of Cancel will aggregate any exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + If is true, an exception will immediately propagate out of the + call to Cancel, preventing the remaining callbacks and cancelable operations from being processed. + If is false, this overload will aggregate any + exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + Specifies whether exceptions should immediately propagate. + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Releases the resources used by this . + + + This method is not thread-safe for any other concurrent calls. + + + + + Throws an exception if the source has been disposed. + + + + + InternalGetStaticSource() + + Whether the source should be set. + A static source to be shared among multiple tokens. + + + + Registers a callback object. If cancellation has already occurred, the + callback will have been run by the time this method returns. + + + + + + + + + + Invoke the Canceled event. + + + The handlers are invoked synchronously in LIFO order. + + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The first CancellationToken to observe. + The second CancellationToken to observe. + A CancellationTokenSource that is linked + to the source tokens. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The CancellationToken instances to observe. + A CancellationTokenSource that is linked + to the source tokens. + is null. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Gets whether cancellation has been requested for this CancellationTokenSource. + + Whether cancellation has been requested for this CancellationTokenSource. + + + This property indicates whether cancellation has been requested for this token source, such as + due to a call to its + Cancel method. + + + If this property returns true, it only guarantees that cancellation has been requested. It does not + guarantee that every handler registered with the corresponding token has finished executing, nor + that cancellation requests have finished propagating to all registered handlers. Additional + synchronization may be required, particularly in situations where related objects are being + canceled concurrently. + + + + + + A simple helper to determine whether cancellation has finished. + + + + + A simple helper to determine whether disposal has occured. + + + + + The ID of the thread that is running callbacks. + + + + + Gets the CancellationToken + associated with this . + + The CancellationToken + associated with this . + The token source has been + disposed. + + + + + + + + + + + + + + The currently executing callback + + + + + A helper class for collating the various bits of information required to execute + cancellation callbacks. + + + + + InternalExecuteCallbackSynchronously_GeneralPath + This will be called on the target synchronization context, however, we still need to restore the required execution context + + + + + A sparsely populated array. Elements can be sparse and some null, but this allows for + lock-free additions and growth, and also for constant time removal (by nulling out). + + The kind of elements contained within. + + + + Allocates a new array with the given initial size. + + How many array slots to pre-allocate. + + + + Adds an element in the first available slot, beginning the search from the tail-to-head. + If no slots are available, the array is grown. The method doesn't return until successful. + + The element to add. + Information about where the add happened, to enable O(1) deregistration. + + + + The tail of the doubly linked list. + + + + + A struct to hold a link to the exact spot in an array an element was inserted, enabling + constant time removal later on. + + + + + A fragment of a sparsely populated array, doubly linked. + + The kind of elements contained within. + + + + Provides lazy initialization routines. + + + These routines avoid needing to allocate a dedicated, lazy-initialization instance, instead using + references to ensure targets have been initialized as they are accessed. + + + + + Initializes a target reference type with the type's default constructor if the target has not + already been initialized. + + The refence type of the reference to be initialized. + A reference of type to initialize if it has not + already been initialized. + The initialized reference of type . + Type does not have a default + constructor. + + Permissions to access the constructor of type were missing. + + + + This method may only be used on reference types. To ensure initialization of value + types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initializes a target reference type using the specified function if it has not already been + initialized. + + The reference type of the reference to be initialized. + The reference of type to initialize if it has not + already been initialized. + The invoked to initialize the + reference. + The initialized reference of type . + Type does not have a + default constructor. + returned + null. + + + This method may only be used on reference types, and may + not return a null reference (Nothing in Visual Basic). To ensure initialization of value types or + to allow null reference types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initialize the target using the given delegate (slow path). + + The reference type of the reference to be initialized. + The variable that need to be initialized + The delegate that will be executed to initialize the target + The initialized variable + + + + Initializes a target reference or value type with its default constructor if it has not already + been initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The initialized value of type . + + + + Initializes a target reference or value type with a specified function if it has not already been + initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The invoked to initialize the + reference or value. + The initialized value of type . + + + + Ensure the target is initialized and return the value (slow path). This overload permits nulls + and also works for value type targets. Uses the supplied function to create the value. + + The type of target. + A reference to the target to be initialized. + A reference to a location tracking whether the target has been initialized. + A reference to a location containing a mutual exclusive lock. + + The to invoke in order to produce the lazily-initialized value. + + The initialized object. + + + + Provides a slimmed down version of . + + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads, with the exception of Dispose, which + must only be used when all other operations on the have + completed, and Reset, which should only be used when no other threads are + accessing the event. + + + + + Initializes a new instance of the + class with an initial state of nonsignaled. + + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled. + + true to set the initial state signaled; false to set the initial state + to nonsignaled. + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled and a specified + spin count. + + true to set the initial state to signaled; false to set the initial state + to nonsignaled. + The number of spin waits that will occur before falling back to a true + wait. + is less than + 0 or greater than the maximum allowed value. + + + + Initializes the internal state of the event. + + Whether the event is set initially or not. + The spin count that decides when the event will block. + + + + Helper to ensure the lock object is created before first use. + + + + + This method lazily initializes the event object. It uses CAS to guarantee that + many threads racing to call this at once don't result in more than one event + being stored and used. The event will be signaled or unsignaled depending on + the state of the thin-event itself, with synchronization taken into account. + + True if a new event was created and stored, false otherwise. + + + + Sets the state of the event to signaled, which allows one or more threads waiting on the event to + proceed. + + + + + Private helper to actually perform the Set. + + Indicates whether we are calling Set() during cancellation. + The object has been canceled. + + + + Sets the state of the event to nonsignaled, which causes threads to block. + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Blocks the current thread until the current is set. + + + The maximum number of waiters has been exceeded. + + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current receives a signal, + while observing a . + + The to + observe. + + The maximum number of waiters has been exceeded. + + was + canceled. + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval. + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval, while observing a . + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + The to + observe. + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + was canceled. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval. + + The number of milliseconds to wait, or (-1) to wait indefinitely. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval, while observing a . + + The number of milliseconds to wait, or (-1) to wait indefinitely. + The to + observe. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + was canceled. + + + + Releases all resources used by the current instance of . + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + When overridden in a derived class, releases the unmanaged resources used by the + , and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Throw ObjectDisposedException if the MRES is disposed + + + + + Private helper method to wake up waiters when a cancellationToken gets canceled. + + + + + Private helper method for updating parts of a bit-string state value. + Mainly called from the IsSet and Waiters properties setters + + + Note: the parameter types must be int as CompareExchange cannot take a Uint + + The new value + The mask used to set the bits + + + + Private helper method - performs Mask and shift, particular helpful to extract a field from a packed word. + eg ExtractStatePortionAndShiftRight(0x12345678, 0xFF000000, 24) => 0x12, ie extracting the top 8-bits as a simple integer + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + + + Performs a Mask operation, but does not perform the shift. + This is acceptable for boolean values for which the shift is unnecessary + eg (val & Mask) != 0 is an appropriate way to extract a boolean rather than using + ((val & Mask) >> shiftAmount) == 1 + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + Helper function to measure and update the wait time + + The first time (in Ticks) observed when the wait started. + The orginal wait timeoutout in milliseconds. + The new wait time in milliseconds, -1 if the time expired, -2 if overflow in counters + has occurred. + + + + Gets the underlying object for this . + + The underlying event object fore this . + + Accessing this property forces initialization of an underlying event object if one hasn't + already been created. To simply wait on this , + the public Wait methods should be preferred. + + + + + Gets whether the event is set. + + true if the event has is set; otherwise, false. + + + + Gets the number of spin waits that will be occur before falling back to a true wait. + + + + + How many threads are waiting. + + + + + Provides support for spin-based waiting. + + + + encapsulates common spinning logic. On single-processor machines, yields are + always used instead of busy waits, and on computers with Intel™ processors employing Hyper-Threading™ + technology, it helps to prevent hardware thread starvation. SpinWait encapsulates a good mixture of + spinning and true yielding. + + + is a value type, which means that low-level code can utilize SpinWait without + fear of unnecessary allocation overheads. SpinWait is not generally useful for ordinary applications. + In most cases, you should use the synchronization classes provided by the .NET Framework, such as + . For most purposes where spin waiting is required, however, + the type should be preferred over the System.Threading.Thread.SpinWait method. + + + While SpinWait is designed to be used in concurrent applications, it is not designed to be + used from multiple threads concurrently. SpinWait's members are not thread-safe. If multiple + threads must spin, each should use its own instance of SpinWait. + + + + + + Performs a single spin. + + + This is typically called in a loop, and may change in behavior based on the number of times a + has been called thus far on this instance. + + + + + Resets the spin counter. + + + This makes and behave as though no calls + to had been issued on this instance. If a instance + is reused many times, it may be useful to reset it to avoid yielding too soon. + + + + + Spins until the specified condition is satisfied. + + A delegate to be executed over and over until it returns true. + The argument is null. + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + + A that represents the number of milliseconds to wait, + or a TimeSpan that represents -1 milliseconds to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a negative number + other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than + . + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + The number of milliseconds to wait, or (-1) to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a + negative number other than -1, which represents an infinite time-out. + + + + Gets the number of times has been called on this instance. + + + + + Gets whether the next call to will yield the processor, triggering a + forced context switch. + + Whether the next call to will yield the processor, triggering a + forced context switch. + + On a single-CPU machine, always yields the processor. On machines with + multiple CPUs, may yield after an unspecified number of calls. + + + + + A helper class to get the number of preocessors, it updates the numbers of processors every sampling interval + + + + + Gets the number of available processors + + + + + Gets whether the current machine has only a single processor. + + + + + Represents an asynchronous operation that produces a result at some time in the future. + + + The type of the result produced by this . + + + + instances may be created in a variety of ways. The most common approach is by + using the task's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs a function, the factory's StartNew + method may be used: + + // C# + var t = Task<int>.Factory.StartNew(() => GenerateResult()); + - or - + var t = Task.Factory.StartNew(() => GenerateResult()); + + ' Visual Basic + Dim t = Task<int>.Factory.StartNew(Function() GenerateResult()) + - or - + Dim t = Task.Factory.StartNew(Function() GenerateResult()) + + + + The class also provides constructors that initialize the task but that do not + schedule it for execution. For performance reasons, the StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + Start + method may then be used to schedule the task for execution at a later time. + + + All members of , except for + Dispose, are thread-safe + and may be used from multiple threads concurrently. + + + + + + Represents an asynchronous operation. + + + + instances may be created in a variety of ways. The most common approach is by + using the Task type's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs an action, the factory's StartNew + method may be used: + + // C# + var t = Task.Factory.StartNew(() => DoAction()); + + ' Visual Basic + Dim t = Task.Factory.StartNew(Function() DoAction()) + + + + The class also provides constructors that initialize the Task but that do not + schedule it for execution. For performance reasons, TaskFactory's StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + method may then be used to schedule the task for execution at a later time. + + + All members of , except for , are thread-safe + and may be used from multiple threads concurrently. + + + For operations that return values, the class + should be used. + + + For developers implementing custom debuggers, several internal and private members of Task may be + useful (these may change from release to release). The Int32 m_taskId field serves as the backing + store for the property, however accessing this field directly from a debugger may be + more efficient than accessing the same value through the property's getter method (the + s_taskIdCounter Int32 counter is used to retrieve the next available ID for a Task). Similarly, the + Int32 m_stateFlags field stores information about the current lifecycle stage of the Task, + information also accessible through the property. The m_action System.Object + field stores a reference to the Task's delegate, and the m_stateObject System.Object field stores the + async state passed to the Task by the developer. Finally, for debuggers that parse stack frames, the + InternalWait method serves a potential marker for when a Task is entering a wait operation. + + + + + + A type initializer that runs with the appropriate permissions. + + + + + Initializes a new with the specified action. + + The delegate that represents the code to execute in the Task. + The argument is null. + + + + Initializes a new with the specified action and CancellationToken. + + The delegate that represents the code to execute in the Task. + The CancellationToken + that will be assigned to the new Task. + The argument is null. + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and state. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + An internal constructor used by the factory methods on task and its descendent(s). + This variant does not capture the ExecutionContext; it is up to the caller to do that. + + An action to execute. + Optional state to pass to the action. + Parent of Task. + A CancellationToken for the task. + A task scheduler under which the task will run. + Options to control its execution. + Internal options to control its execution + + + + Common logic used by the following internal ctors: + Task() + Task(object action, object state, Task parent, TaskCreationOptions options, TaskScheduler taskScheduler) + + ASSUMES THAT m_creatingTask IS ALREADY SET. + + + Action for task to execute. + Object to which to pass to action (may be null) + Task scheduler on which to run thread (only used by continuation tasks). + A CancellationToken for the Task. + Options to customize behavior of Task. + Internal options to customize behavior of Task. + + + + Checks if we registered a CT callback during construction, and deregisters it. + This should be called when we know the registration isn't useful anymore. Specifically from Finish() if the task has completed + successfully or with an exception. + + + + + Captures the ExecutionContext so long as flow isn't suppressed. + + A stack crawl mark pointing to the frame of the caller. + + + + Internal function that will be called by a new child task to add itself to + the children list of the parent (this). + + Since a child task can only be created from the thread executing the action delegate + of this task, reentrancy is neither required nor supported. This should not be called from + anywhere other than the task construction/initialization codepaths. + + + + + Starts the , scheduling it for execution to the current TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time + will result in an exception. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Starts the , scheduling it for execution to the specified TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + The TaskScheduler with which to associate + and execute this task. + + + The argument is null. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the current TaskScheduler. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + Tasks executed with will be associated with the current TaskScheduler. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the scheduler provided. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + The parameter + is null. + The scheduler on which to attempt to run this task inline. + + + + Throws an exception if the task has been disposed, and hence can no longer be accessed. + + The task has been disposed. + + + + Sets the internal completion event. + + + + + Disposes the , releasing all of its unmanaged resources. + + + Unlike most of the members of , this method is not thread-safe. + Also, may only be called on a that is in one of + the final states: RanToCompletion, + Faulted, or + Canceled. + + + The exception that is thrown if the is not in + one of the final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Disposes the , releasing all of its unmanaged resources. + + + A Boolean value that indicates whether this method is being called due to a call to . + + + Unlike most of the members of , this method is not thread-safe. + + + + + Schedules the task for execution. + + If true, TASK_STATE_STARTED bit is turned on in + an atomic fashion, making sure that TASK_STATE_CANCELED does not get set + underneath us. If false, TASK_STATE_STARTED bit is OR-ed right in. This + allows us to streamline things a bit for StartNew(), where competing cancellations + are not a problem. + + + + Adds an exception to the list of exceptions this task has thrown. + + An object representing either an Exception or a collection of Exceptions. + + + + Returns a list of exceptions by aggregating the holder's contents. Or null if + no exceptions have been thrown. + + Whether to include a TCE if cancelled. + An aggregate exception, or null if no exceptions have been caught. + + + + Throws an aggregate exception if the task contains exceptions. + + + + + Checks whether this is an attached task, and whether we are being called by the parent task. + And sets the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag based on that. + + This is meant to be used internally when throwing an exception, and when WaitAll is gathering + exceptions for tasks it waited on. If this flag gets set, the implicit wait on children + will skip exceptions to prevent duplication. + + This should only be called when this task has completed with an exception + + + + + + Signals completion of this particular task. + + The bUserDelegateExecuted parameter indicates whether this Finish() call comes following the + full execution of the user delegate. + + If bUserDelegateExecuted is false, it mean user delegate wasn't invoked at all (either due to + a cancellation request, or because this task is a promise style Task). In this case, the steps + involving child tasks (i.e. WaitForChildren) will be skipped. + + + + + + FinishStageTwo is to be executed as soon as we known there are no more children to complete. + It can happen i) either on the thread that originally executed this task (if no children were spawned, or they all completed by the time this task's delegate quit) + ii) or on the thread that executed the last child. + + + + + Final stage of the task completion code path. Notifies the parent (if any) that another of its childre are done, and runs continuations. + This function is only separated out from FinishStageTwo because these two operations are also needed to be called from CancellationCleanupLogic() + + + + + This is called by children of this task when they are completed. + + + + + This is to be called just before the task does its final state transition. + It traverses the list of exceptional children, and appends their aggregate exceptions into this one's exception list + + + + + Special purpose Finish() entry point to be used when the task delegate throws a ThreadAbortedException + This makes a note in the state flags so that we avoid any costly synchronous operations in the finish codepath + such as inlined continuations + + + Indicates whether the ThreadAbortException was added to this task's exception holder. + This should always be true except for the case of non-root self replicating task copies. + + Whether the delegate was executed. + + + + Executes the task. This method will only be called once, and handles bookeeping associated with + self-replicating tasks, in addition to performing necessary exception marshaling. + + The task has already been disposed. + + + + IThreadPoolWorkItem override, which is the entry function for this task when the TP scheduler decides to run it. + + + + + + Outermost entry function to execute this task. Handles all aspects of executing a task on the caller thread. + Currently this is called by IThreadPoolWorkItem.ExecuteWorkItem(), and TaskManager.TryExecuteInline. + + + Performs atomic updates to prevent double execution. Should only be set to true + in codepaths servicing user provided TaskSchedulers. The ConcRT or ThreadPool schedulers don't need this. + + + + The actual code which invokes the body of the task. This can be overriden in derived types. + + + + + Alternate InnerInvoke prototype to be called from ExecuteSelfReplicating() so that + the Parallel Debugger can discover the actual task being invoked. + Details: Here, InnerInvoke is actually being called on the rootTask object while we are actually executing the + childTask. And the debugger needs to discover the childTask, so we pass that down as an argument. + The NoOptimization and NoInlining flags ensure that the childTask pointer is retained, and that this + function appears on the callstack. + + + + + + Performs whatever handling is necessary for an unhandled exception. Normally + this just entails adding the exception to the holder object. + + The exception that went unhandled. + + + + Waits for the to complete execution. + + + The was canceled -or- an exception was thrown during + the execution of the . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A to observe while waiting for the task to complete. + + + The was canceled. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + true if the completed execution within the allotted time; otherwise, + false. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the task to complete. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + The core wait function, which is only accesible internally. It's meant to be used in places in TPL code where + the current context is known or cached. + + + + + Cancels the . + + Indiactes whether we should only cancel non-invoked tasks. + For the default scheduler this option will only be serviced through TryDequeue. + For custom schedulers we also attempt an atomic state transition. + true if the task was successfully canceled; otherwise, false. + The + has been disposed. + + + + Sets the task's cancellation acknowledged flag. + + + + + Runs all of the continuations, as appropriate. + + + + + Helper function to determine whether the current task is in the state desired by the + continuation kind under evaluation. Three possibilities exist: the task failed with + an unhandled exception (OnFailed), the task was canceled before running (OnAborted), + or the task completed successfully (OnCompletedSuccessfully). Note that the last + one includes completing due to cancellation. + + The continuation options under evaluation. + True if the continuation should be run given the task's current state. + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + The that will be assigned to the new continuation task. + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Converts TaskContinuationOptions to TaskCreationOptions, and also does + some validity checking along the way. + + Incoming TaskContinuationOptions + Outgoing TaskCreationOptions + Outgoing InternalTaskOptions + + + + Registers the continuation and possibly runs it (if the task is already finished). + + The continuation task itself. + TaskScheduler with which to associate continuation task. + Restrictions on when the continuation becomes active. + + + + Waits for all of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The was canceled. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Waits for a set of handles in a STA-aware way. In other words, it will wait for each + of the events individually if we're on a STA thread, because MsgWaitForMultipleObjectsEx + can't do a true wait-all due to its hidden message queue event. This is not atomic, + of course, but we only wait on one-way (MRE) events anyway so this is OK. + + An array of wait handles to wait on. + The timeout to use during waits. + The cancellationToken that enables a wait to be canceled. + True if all waits succeeded, false if a timeout occurred. + + + + Internal WaitAll implementation which is meant to be used with small number of tasks, + optimized for Parallel.Invoke and other structured primitives. + + + + + This internal function is only meant to be called by WaitAll() + If the completed task is canceled or it has other exceptions, here we will add those + into the passed in exception list (which will be lazily initialized here). + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + The index of the completed task in the array argument. + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + The was canceled. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Gets a unique ID for this Task instance. + + + Task IDs are assigned on-demand and do not necessarily represent the order in the which Task + instances were created. + + + + + Returns the unique ID of the currently executing Task. + + + + + Gets the Task instance currently executing, or + null if none exists. + + + + + Gets the Exception that caused the Task to end prematurely. If the Task completed successfully or has not yet thrown any + exceptions, this will return null. + + + Tasks that throw unhandled exceptions store the resulting exception and propagate it wrapped in a + in calls to Wait + or in accesses to the property. Any exceptions not observed by the time + the Task instance is garbage collected will be propagated on the finalizer thread. + + + The Task + has been disposed. + + + + + Gets the TaskStatus of this Task. + + + + + Gets whether this Task instance has completed + execution due to being canceled. + + + A Task will complete in Canceled state either if its CancellationToken + was marked for cancellation before the task started executing, or if the task acknowledged the cancellation request on + its already signaled CancellationToken by throwing an + OperationCanceledException2 that bears the same + CancellationToken. + + + + + Returns true if this task has a cancellation token and it was signaled. + To be used internally in execute entry codepaths. + + + + + This internal property provides access to the CancellationToken that was set on the task + when it was constructed. + + + + + Gets whether this threw an OperationCanceledException2 while its CancellationToken was signaled. + + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Checks whether this task has been disposed. + + + + + Gets the TaskCreationOptions used + to create this task. + + + + + Gets a that can be used to wait for the task to + complete. + + + Using the wait functionality provided by + should be preferred over using for similar + functionality. + + + The has been disposed. + + + + + Gets the state object supplied when the Task was created, + or null if none was supplied. + + + + + Gets an indication of whether the asynchronous operation completed synchronously. + + true if the asynchronous operation completed synchronously; otherwise, false. + + + + Provides access to the TaskScheduler responsible for executing this Task. + + + + + Provides access to factory methods for creating and instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on TaskFactory. + + + + + Provides an event that can be used to wait for completion. + Only called by Wait*(), which means that we really do need to instantiate a completion event. + + + + + Determines whether this is the root task of a self replicating group. + + + + + Determines whether the task is a replica itself. + + + + + The property formerly known as IsFaulted. + + + + + Gets whether the completed due to an unhandled exception. + + + If is true, the Task's will be equal to + TaskStatus.Faulted, and its + property will be non-null. + + + + + Checks whether the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag is set, + This will only be used by the implicit wait to prevent double throws + + + + + + Checks whether the body was ever invoked. Used by task scheduler code to verify custom schedulers actually ran the task. + + + + + A structure to hold continuation information. + + + + + Constructs a new continuation structure. + + The task to be activated. + The continuation options. + The scheduler to use for the continuation. + + + + Invokes the continuation for the target completion task. + + The completed task. + Whether the continuation can be inlined. + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The argument is null. + + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The to be assigned to this task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and state. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Creates a new future object. + + The parent task for this future. + A function that yields the future value. + The task scheduler which will be used to execute the future. + The CancellationToken for the task. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Creates a new future object. + + The parent task for this future. + An object containing data to be used by the action; may be null. + A function that yields the future value. + The CancellationToken for the task. + The task scheduler which will be used to execute the future. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Evaluates the value selector of the Task which is passed in as an object and stores the result. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new task. + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . This task's completion state will be transferred to the task returned + from the ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be passed as + an argument this completed task. + + The that will be assigned to the new task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . + This task's completion state will be transferred to the task returned from the + ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Gets the result value of this . + + + The get accessor for this property ensures that the asynchronous operation is complete before + returning. Once the result of the computation is available, it is stored and will be returned + immediately on later calls to . + + + + + Provides access to factory methods for creating instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on the factory type. + + + + + Provides support for creating and scheduling + Task{TResult} objects. + + The type of the results that are available though + the Task{TResult} objects that are associated with + the methods in this class. + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task{TResult}.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the default configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory{TResult}. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory{TResult}. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The that will be assigned to the new task. + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory{TResult}. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory{TResult}. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory{TResult}. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents the current stage in the lifecycle of a . + + + + + The task has been initialized but has not yet been scheduled. + + + + + The task is waiting to be activated and scheduled internally by the .NET Framework infrastructure. + + + + + The task has been scheduled for execution but has not yet begun executing. + + + + + The task is running but has not yet completed. + + + + + The task has finished executing and is implicitly waiting for + attached child tasks to complete. + + + + + The task completed execution successfully. + + + + + The task acknowledged cancellation by throwing an OperationCanceledException2 with its own CancellationToken + while the token was in signaled state, or the task's CancellationToken was already signaled before the + task started executing. + + + + + The task completed due to an unhandled exception. + + + + + Specifies flags that control optional behavior for the creation and execution of tasks. + + + + + Specifies that the default behavior should be used. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides a hint to the + TaskScheduler that oversubscription may be + warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Task creation flags which are only used internally. + + + + Specifies "No internal task options" + + + Used to filter out internal vs. public task creation options. + + + Specifies that the task will be queued by the runtime before handing it over to the user. + This flag will be used to skip the cancellationtoken registration step, which is only meant for unstarted tasks. + + + + Specifies flags that control optional behavior for the creation and execution of continuation tasks. + + + + + Default = "Continue on any, no task options, run asynchronously" + Specifies that the default behavior should be used. Continuations, by default, will + be scheduled when the antecedent task completes, regardless of the task's final TaskStatus. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides + a hint to the TaskScheduler that + oversubscription may be warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Specifies that the continuation task should not be scheduled if its antecedent ran to completion. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled + exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent was canceled. This + option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent ran to + completion. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent threw an + unhandled exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent was canceled. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be executed synchronously. With this option + specified, the continuation will be run on the same thread that causes the antecedent task to + transition into its final state. If the antecedent is already complete when the continuation is + created, the continuation will run on the thread creating the continuation. Only very + short-running continuations should be executed synchronously. + + + + + Represents an exception used to communicate task cancellation. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + Initializes a new instance of the class + with a reference to the that has been canceled. + + A task that has been canceled. + + + + Gets the task associated with this exception. + + + It is permissible for no Task to be associated with a + , in which case + this property will return null. + + + + + Represents the producer side of a unbound to a + delegate, providing access to the consumer side through the property. + + + + It is often the case that a is desired to + represent another asynchronous operation. + TaskCompletionSource is provided for this purpose. It enables + the creation of a task that can be handed out to consumers, and those consumers can use the members + of the task as they would any other. However, unlike most tasks, the state of a task created by a + TaskCompletionSource is controlled explicitly by the methods on TaskCompletionSource. This enables the + completion of the external asynchronous operation to be propagated to the underlying Task. The + separation also ensures that consumers are not able to transition the state without access to the + corresponding TaskCompletionSource. + + + All members of are thread-safe + and may be used from multiple threads concurrently. + + + The type of the result value assocatied with this . + + + + Creates a . + + + + + Creates a + with the specified options. + + + The created + by this instance and accessible through its property + will be instantiated using the specified . + + The options to use when creating the underlying + . + + The represent options invalid for use + with a . + + + + + Creates a + with the specified state. + + The state to use as the underlying + 's AsyncState. + + + + Creates a with + the specified state and options. + + The options to use when creating the underlying + . + The state to use as the underlying + 's AsyncState. + + The represent options invalid for use + with a . + + + + + Attempts to transition the underlying + into the + Faulted + state. + + The exception to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + The was disposed. + + + + Attempts to transition the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + There are one or more null elements in . + The collection is empty. + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The exception to bind to this . + The argument is null. + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + The argument is null. + There are one or more null elements in . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Canceled + state. + + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + Canceled + state. + + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Gets the created + by this . + + + This property enables a consumer access to the that is controlled by this instance. + The , , + , and + methods (and their "Try" variants) on this instance all result in the relevant state + transitions on this underlying Task. + + + + + An exception holder manages a list of exceptions for one particular task. + It offers the ability to aggregate, but more importantly, also offers intrinsic + support for propagating unhandled exceptions that are never observed. It does + this by aggregating and throwing if the holder is ever GC'd without the holder's + contents ever having been requested (e.g. by a Task.Wait, Task.get_Exception, etc). + + + + + Creates a new holder; it will be registered for finalization. + + The task this holder belongs to. + + + + A finalizer that repropagates unhandled exceptions. + + + + + Add an exception to the internal list. This will ensure the holder is + in the proper state (handled/unhandled) depending on the list's contents. + + An exception object (either an Exception or an + IEnumerable{Exception}) to add to the list. + + + + A private helper method that ensures the holder is considered + unhandled, i.e. it is registered for finalization. + + + + + A private helper method that ensures the holder is considered + handled, i.e. it is not registered for finalization. + + Whether this is called from the finalizer thread. + + + + Allocates a new aggregate exception and adds the contents of the list to + it. By calling this method, the holder assumes exceptions to have been + "observed", such that the finalization check will be subsequently skipped. + + Whether this is being called from a finalizer. + An extra exception to be included (optionally). + The aggregate exception to throw. + + + + Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of + instances. + + + + + Creates a proxy Task that represents the + asynchronous operation of a Task{Task}. + + + It is often useful to be able to return a Task from a + Task{TResult}, where the inner Task represents work done as part of the outer Task{TResult}. However, + doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior. Unwrap + solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}. + + The Task{Task} to unwrap. + The exception that is thrown if the + argument is null. + A Task that represents the asynchronous operation of the provided Task{Task}. + + + + Creates a proxy Task{TResult} that represents the + asynchronous operation of a Task{Task{TResult}}. + + + It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult} + represents work done as part of the outer Task{TResult}. However, doing so results in a Task{Task{TResult}}, + which, if not dealt with carefully, could produce unexpected behavior. Unwrap solves this problem by + creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}. + + The Task{Task{TResult}} to unwrap. + The exception that is thrown if the + argument is null. + A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}. /// Unwraps a Task that returns another Task. + + + + Provides support for creating and scheduling + Tasks. + + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new task. + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Check validity of options passed to FromAsync method + + The options to be validated. + determines type of FromAsync method that called this method + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents an abstract scheduler for tasks. + + + + TaskScheduler acts as the extension point for all + pluggable scheduling logic. This includes mechanisms such as how to schedule a task for execution, and + how scheduled tasks should be exposed to debuggers. + + + All members of the abstract type are thread-safe + and may be used from multiple threads concurrently. + + + + + + Queues a Task to the scheduler. + + + + A class derived from TaskScheduler + implements this method to accept tasks being scheduled on the scheduler. + A typical implementation would store the task in an internal data structure, which would + be serviced by threads that would execute those tasks at some time in the future. + + + This method is only meant to be called by the .NET Framework and + should not be called directly by the derived class. This is necessary + for maintaining the consistency of the system. + + + The Task to be queued. + The argument is null. + + + + Determines whether the provided Task + can be executed synchronously in this call, and if it can, executes it. + + + + A class derived from TaskScheduler implements this function to + support inline execution of a task on a thread that initiates a wait on that task object. Inline + execution is optional, and the request may be rejected by returning false. However, better + scalability typically results the more tasks that can be inlined, and in fact a scheduler that + inlines too little may be prone to deadlocks. A proper implementation should ensure that a + request executing under the policies guaranteed by the scheduler can successfully inline. For + example, if a scheduler uses a dedicated thread to execute tasks, any inlining requests from that + thread should succeed. + + + If a scheduler decides to perform the inline execution, it should do so by calling to the base + TaskScheduler's + TryExecuteTask method with the provided task object, propagating + the return value. It may also be appropriate for the scheduler to remove an inlined task from its + internal data structures if it decides to honor the inlining request. Note, however, that under + some circumstances a scheduler may be asked to inline a task that was not previously provided to + it with the method. + + + The derived scheduler is responsible for making sure that the calling thread is suitable for + executing the given task as far as its own scheduling and execution policies are concerned. + + + The Task to be + executed. + A Boolean denoting whether or not task has previously been + queued. If this parameter is True, then the task may have been previously queued (scheduled); if + False, then the task is known not to have been queued, and this call is being made in order to + execute the task inline without queueing it. + A Boolean value indicating whether the task was executed inline. + The argument is + null. + The was already + executed. + + + + Generates an enumerable of Task instances + currently queued to the scheduler waiting to be executed. + + + + A class derived from implements this method in order to support + integration with debuggers. This method will only be invoked by the .NET Framework when the + debugger requests access to the data. The enumerable returned will be traversed by debugging + utilities to access the tasks currently queued to this scheduler, enabling the debugger to + provide a representation of this information in the user interface. + + + It is important to note that, when this method is called, all other threads in the process will + be frozen. Therefore, it's important to avoid synchronization with other threads that may lead to + blocking. If synchronization is necessary, the method should prefer to throw a + than to block, which could cause a debugger to experience delays. Additionally, this method and + the enumerable returned must not modify any globally visible state. + + + The returned enumerable should never be null. If there are currently no queued tasks, an empty + enumerable should be returned instead. + + + For developers implementing a custom debugger, this method shouldn't be called directly, but + rather this functionality should be accessed through the internal wrapper method + GetScheduledTasksForDebugger: + internal Task[] GetScheduledTasksForDebugger(). This method returns an array of tasks, + rather than an enumerable. In order to retrieve a list of active schedulers, a debugger may use + another internal method: internal static TaskScheduler[] GetTaskSchedulersForDebugger(). + This static method returns an array of all active TaskScheduler instances. + GetScheduledTasksForDebugger then may be used on each of these scheduler instances to retrieve + the list of scheduled tasks for each. + + + An enumerable that allows traversal of tasks currently queued to this scheduler. + + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Retrieves some thread static state that can be cached and passed to multiple + TryRunInline calls, avoiding superflous TLS fetches. + + A bag of TLS state (or null if none exists). + + + + Attempts to execute the target task synchronously. + + The task to run. + True if the task may have been previously queued, + false if the task was absolutely not previously queued. + The state retrieved from GetThreadStatics + True if it ran, false otherwise. + + + + Attempts to dequeue a Task that was previously queued to + this scheduler. + + The Task to be dequeued. + A Boolean denoting whether the argument was successfully dequeued. + The argument is null. + + + + Notifies the scheduler that a work item has made progress. + + + + + Initializes the . + + + + + Frees all resources associated with this scheduler. + + + + + Creates a + associated with the current . + + + All Task instances queued to + the returned scheduler will be executed through a call to the + Post method + on that context. + + + A associated with + the current SynchronizationContext, as + determined by SynchronizationContext.Current. + + + The current SynchronizationContext may not be used as a TaskScheduler. + + + + + Attempts to execute the provided Task + on this scheduler. + + + + Scheduler implementations are provided with Task + instances to be executed through either the method or the + method. When the scheduler deems it appropriate to run the + provided task, should be used to do so. TryExecuteTask handles all + aspects of executing a task, including action invocation, exception handling, state management, + and lifecycle control. + + + must only be used for tasks provided to this scheduler by the .NET + Framework infrastructure. It should not be used to execute arbitrary tasks obtained through + custom mechanisms. + + + + A Task object to be executed. + + The is not associated with this scheduler. + + A Boolean that is true if was successfully executed, false if it + was not. A common reason for execution failure is that the task had previously been executed or + is in the process of being executed by another thread. + + + + Provides an array of all queued Task instances + for the debugger. + + + The returned array is populated through a call to . + Note that this function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of Task instances. + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Provides an array of all active TaskScheduler + instances for the debugger. + + + This function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of TaskScheduler instances. + + + + Registers a new TaskScheduler instance in the global collection of schedulers. + + + + + Removes a TaskScheduler instance from the global collection of schedulers. + + + + + Indicates the maximum concurrency level this + is able to support. + + + + + Indicates whether this is a custom scheduler, in which case the safe code paths will be taken upon task entry + using a CAS to transition from queued state to executing. + + + + + Gets the default TaskScheduler instance. + + + + + Gets the TaskScheduler + associated with the currently executing task. + + + When not called from within a task, will return the scheduler. + + + + + Gets the unique ID for this . + + + + + Occurs when a faulted 's unobserved exception is about to trigger exception escalation + policy, which, by default, would terminate the process. + + + This AppDomain-wide event provides a mechanism to prevent exception + escalation policy (which, by default, terminates the process) from triggering. + Each handler is passed a + instance, which may be used to examine the exception and to mark it as observed. + + + + + Nested class that provides debugger view for TaskScheduler + + + + Default thread pool scheduler. + + + + A TaskScheduler implementation that executes all tasks queued to it through a call to + on the + that its associated with. The default constructor for this class binds to the current + + + + + Constructs a SynchronizationContextTaskScheduler associated with + + This constructor expects to be set. + + + + Implemetation of for this scheduler class. + + Simply posts the tasks to be executed on the associated . + + + + + + Implementation of for this scheduler class. + + The task will be executed inline only if the call happens within + the associated . + + + + + + + Implementes the property for + this scheduler class. + + By default it returns 1, because a based + scheduler only supports execution on a single thread. + + + + + Provides data for the event that is raised when a faulted 's + exception goes unobserved. + + + The Exception property is used to examine the exception without marking it + as observed, whereas the method is used to mark the exception + as observed. Marking the exception as observed prevents it from triggering exception escalation policy + which, by default, terminates the process. + + + + + Initializes a new instance of the class + with the unobserved exception. + + The Exception that has gone unobserved. + + + + Marks the as "observed," thus preventing it + from triggering exception escalation policy which, by default, terminates the process. + + + + + Gets whether this exception has been marked as "observed." + + + + + The Exception that went unobserved. + + + + + Represents an exception used to communicate an invalid operation by a + . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class using the default error message and a reference to the inner exception that is the cause of + this exception. + + The exception that is the cause of the current exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8+wp8+wpa81/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Threading.Tasks.dll new file mode 100644 index 0000000..a089d47 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Threading.Tasks.xml new file mode 100644 index 0000000..5375fda --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/System.Threading.Tasks.xml @@ -0,0 +1,8969 @@ + + + + System.Threading.Tasks + + + + Represents one or more errors that occur during application execution. + + is used to consolidate multiple failures into a single, throwable + exception object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with + a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + The argument + is null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Allocates a new aggregate exception with the specified message and list of inner exceptions. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Returns the that is the root cause of this exception. + + + + + Invokes a handler on each contained by this . + + The predicate to execute for each exception. The predicate accepts as an + argument the to be processed and returns a Boolean to indicate + whether the exception was handled. + + Each invocation of the returns true or false to indicate whether the + was handled. After all invocations, if any exceptions went + unhandled, all unhandled exceptions will be put into a new + which will be thrown. Otherwise, the method simply returns. If any + invocations of the throws an exception, it will halt the processing + of any more exceptions and immediately propagate the thrown exception as-is. + + An exception contained by this was not handled. + The argument is + null. + + + + Flattens an instances into a single, new instance. + + A new, flattened . + + If any inner exceptions are themselves instances of + , this method will recursively flatten all of them. The + inner exceptions returned in the new + will be the union of all of the the inner exceptions from exception tree rooted at the provided + instance. + + + + + Creates and returns a string representation of the current . + + A string representation of the current exception. + + + + Gets a read-only collection of the instances that caused the + current exception. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to One or more errors occurred.. + + + + + Looks up a localized string similar to An element of innerExceptions was null.. + + + + + Looks up a localized string similar to {0}{1}---> (Inner Exception #{2}) {3}{4}{5}. + + + + + Looks up a localized string similar to No tokens were supplied.. + + + + + Looks up a localized string similar to The CancellationTokenSource associated with this CancellationToken has been disposed.. + + + + + Looks up a localized string similar to The CancellationTokenSource has been disposed.. + + + + + Looks up a localized string similar to The SyncRoot property may not be used for the synchronization of concurrent collections.. + + + + + Looks up a localized string similar to The array is multidimensional, or the type parameter for the set cannot be cast automatically to the type of the destination array.. + + + + + Looks up a localized string similar to The index is equal to or greater than the length of the array, or the number of elements in the dictionary is greater than the available space from index to the end of the destination array.. + + + + + Looks up a localized string similar to The capacity argument must be greater than or equal to zero.. + + + + + Looks up a localized string similar to The concurrencyLevel argument must be positive.. + + + + + Looks up a localized string similar to The index argument is less than zero.. + + + + + Looks up a localized string similar to TKey is a reference type and item.Key is null.. + + + + + Looks up a localized string similar to The key already existed in the dictionary.. + + + + + Looks up a localized string similar to The source argument contains duplicate keys.. + + + + + Looks up a localized string similar to The key was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The value was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The lazily-initialized type does not have a public, parameterless constructor.. + + + + + Looks up a localized string similar to ValueFactory returned null.. + + + + + Looks up a localized string similar to The spinCount argument must be in the range 0 to {0}, inclusive.. + + + + + Looks up a localized string similar to There are too many threads currently waiting on the event. A maximum of {0} waiting threads are supported.. + + + + + Looks up a localized string similar to The event has been disposed.. + + + + + Looks up a localized string similar to The operation was canceled.. + + + + + Looks up a localized string similar to The condition argument is null.. + + + + + Looks up a localized string similar to The timeout must represent a value between -1 and Int32.MaxValue, inclusive.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions combined LongRunning and ExecuteSynchronously. Synchronous continuations should not be long running.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions excluded all continuation kinds.. + + + + + Looks up a localized string similar to (Internal)An attempt was made to create a LongRunning SelfReplicating task.. + + + + + Looks up a localized string similar to The value needs to translate in milliseconds to -1 (signifying an infinite timeout), 0 or a positive integer less than or equal to Int32.MaxValue.. + + + + + Looks up a localized string similar to The value needs to be either -1 (signifying an infinite timeout), 0 or a positive integer.. + + + + + Looks up a localized string similar to A task may only be disposed if it is in a completion state (RanToCompletion, Faulted or Canceled).. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.LongRunning in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.PreferFairness in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating in calls to FromAsync.. + + + + + Looks up a localized string similar to FromAsync was called with a TaskManager that had already shut down.. + + + + + Looks up a localized string similar to The tasks argument contains no tasks.. + + + + + Looks up a localized string similar to It is invalid to exclude specific continuation kinds for continuations off of multiple tasks.. + + + + + Looks up a localized string similar to The tasks argument included a null value.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that was already started.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a continuation task.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task not bound to a delegate, such as the task returned from an asynchronous method.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that has already completed.. + + + + + Looks up a localized string similar to Start may not be called on a task that was already started.. + + + + + Looks up a localized string similar to Start may not be called on a continuation task.. + + + + + Looks up a localized string similar to Start may not be called on a task with null action.. + + + + + Looks up a localized string similar to Start may not be called on a promise-style task.. + + + + + Looks up a localized string similar to Start may not be called on a task that has completed.. + + + + + Looks up a localized string similar to The task has been disposed.. + + + + + Looks up a localized string similar to The tasks array included at least one null element.. + + + + + Looks up a localized string similar to The awaited task has not yet completed.. + + + + + Looks up a localized string similar to A task was canceled.. + + + + + Looks up a localized string similar to The exceptions collection was empty.. + + + + + Looks up a localized string similar to The exceptions collection included at least one null element.. + + + + + Looks up a localized string similar to A Task's exception(s) were not observed either by Waiting on the Task or accessing its Exception property. As a result, the unobserved exception was rethrown by the finalizer thread.. + + + + + Looks up a localized string similar to (Internal)Expected an Exception or an IEnumerable<Exception>. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was already executed.. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was previously queued to a different TaskScheduler.. + + + + + Looks up a localized string similar to The current SynchronizationContext may not be used as a TaskScheduler.. + + + + + Looks up a localized string similar to The TryExecuteTaskInline call to the underlying scheduler succeeded, but the task body was not invoked.. + + + + + Looks up a localized string similar to An exception was thrown by a TaskScheduler.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating for a Task<TResult>.. + + + + + Looks up a localized string similar to {Not yet computed}. + + + + + Looks up a localized string similar to A task's Exception may only be set directly if the task was created without a function.. + + + + + Looks up a localized string similar to An attempt was made to transition a task to a final state when it had already completed.. + + + + + Represents a thread-safe collection of keys and values. + + The type of the keys in the dictionary. + The type of the values in the dictionary. + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads. + + + + + Initializes a new instance of the + class that is empty, has the default concurrency level, has the default initial capacity, and + uses the default comparer for the key type. + + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the default + comparer for the key type. + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + is + less than 1. + is less than + 0. + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency + level, has the default initial capacity, and uses the default comparer for the key type. + + The whose elements are copied to + the new + . + is a null reference + (Nothing in Visual Basic). + contains one or more + duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the specified + . + + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency level, has the default + initial capacity, and uses the specified + . + + The whose elements are copied to + the new + . + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). -or- + is a null reference (Nothing in Visual Basic). + + + + + Initializes a new instance of the + class that contains elements copied from the specified , + has the specified concurrency level, has the specified initial capacity, and uses the specified + . + + The estimated number of threads that will update the + concurrently. + The whose elements are copied to the new + . + The implementation to use + when comparing keys. + + is a null reference (Nothing in Visual Basic). + -or- + is a null reference (Nothing in Visual Basic). + + + is less than 1. + + contains one or more duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level, has the specified initial capacity, and + uses the specified . + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + The + implementation to use when comparing keys. + + is less than 1. -or- + is less than 0. + + is a null reference + (Nothing in Visual Basic). + + + + Attempts to add the specified key and value to the . + + The key of the element to add. + The value of the element to add. The value can be a null reference (Nothing + in Visual Basic) for reference types. + true if the key/value pair was added to the + successfully; otherwise, false. + is null reference + (Nothing in Visual Basic). + The + contains too many elements. + + + + Determines whether the contains the specified + key. + + The key to locate in the . + true if the contains an element with + the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Attempts to remove and return the the value with the specified key from the + . + + The key of the element to remove and return. + When this method returns, contains the object removed from the + or the default value of + if the operation failed. + true if an object was removed successfully; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Removes the specified key from the dictionary if it exists and returns its associated value. + If matchValue flag is set, the key will be removed only if is associated with a particular + value. + + The key to search for and remove if it exists. + The variable into which the removed value, if found, is stored. + Whether removal of the key is conditional on its value. + The conditional value to compare against if is true + + + + + Attempts to get the value associated with the specified key from the . + + The key of the value to get. + When this method returns, contains the object from + the + with the spedified key or the default value of + , if the operation failed. + true if the key was found in the ; + otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Compares the existing value for the specified key with a specified value, and if they’re equal, + updates the key with a third value. + + The key whose value is compared with and + possibly replaced. + The value that replaces the value of the element with if the comparison results in equality. + The value that is compared to the value of the element with + . + true if the value with was equal to and replaced with ; otherwise, + false. + is a null + reference. + + + + Removes all keys and values from the . + + + + + Copies the elements of the to an array of + type , starting at the + specified array index. + + The one-dimensional array of type + that is the destination of the elements copied from the . The array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Copies the key and value pairs stored in the to a + new array. + + A new array containing a snapshot of key and value pairs copied from the . + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToPairs. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToEntries. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToObjects. + + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Shared internal implementation for inserts and updates. + If key exists, we always return false; and if updateIfExists == true we force update with value; + If key doesn't exist, we always add value and return true; + + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + The function used to generate a value for the key + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value for the key as returned by valueFactory + if the key was not in the dictionary. + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + the value to be added, if the key does not already exist + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value if the key was not in the dictionary. + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The function used to generate a value for an absent key + The function used to generate a new value for an existing key + based on the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The value to be added for an absent key + The function used to generate a new value for an existing key based on + the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds the specified key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + An element with the same key already exists in the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + true if the element is successfully remove; otherwise false. This method also returns + false if + was not found in the original . + + is a null reference + (Nothing in Visual Basic). + + + + Adds the specified value to the + with the specified key. + + The + structure representing the key and value to add to the . + The of is null. + The + contains too many elements. + An element with the same key already exists in the + + + + + Determines whether the + contains a specific key and value. + + The + structure to locate in the . + true if the is found in the ; otherwise, false. + + + + Removes a key and value from the dictionary. + + The + structure representing the key and value to remove from the . + true if the key and value represented by is successfully + found and removed; otherwise, false. + The Key property of is a null reference (Nothing in Visual Basic). + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Adds the specified key and value to the dictionary. + + The object to use as the key. + The object to use as the value. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + is of a type that is not assignable to the key type of the . -or- + is of a type that is not assignable to , + the type of values in the . + -or- A value with the same key already exists in the . + + + + + Gets whether the contains an + element with the specified key. + + The key to locate in the . + true if the contains + an element with the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + Provides an for the + . + An for the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + is a null reference + (Nothing in Visual Basic). + + + + Copies the elements of the to an array, starting + at the specified array index. + + The one-dimensional array that is the destination of the elements copied from + the . The array must have zero-based + indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Replaces the internal table with a larger one. To prevent multiple threads from resizing the + table as a result of races, the table of buckets that was deemed too small is passed in as + an argument to GrowTable(). GrowTable() obtains a lock, and then checks whether the bucket + table has been replaced in the meantime or not. + + Reference to the bucket table that was deemed too small. + + + + Computes the bucket and lock number for a particular key. + + + + + Acquires all locks for this hash table, and increments locksAcquired by the number + of locks that were successfully acquired. The locks are acquired in an increasing + order. + + + + + Acquires a contiguous range of locks for this hash table, and increments locksAcquired + by the number of locks that were successfully acquired. The locks are acquired in an + increasing order. + + + + + Releases a contiguous range of locks. + + + + + Gets a collection containing the keys in the dictionary. + + + + + Gets a collection containing the values in the dictionary. + + + + + A helper method for asserts. + + + + + Get the data array to be serialized + + + + + Construct the dictionary from a previously seiralized one + + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key. If the specified key is not found, a get + operation throws a + , and a set operation creates a new + element with the specified key. + is a null reference + (Nothing in Visual Basic). + The property is retrieved and + + does not exist in the collection. + + + + Gets the number of key/value pairs contained in the . + + The dictionary contains too many + elements. + The number of key/value paris contained in the . + Count has snapshot semantics and represents the number of items in the + at the moment when Count was accessed. + + + + Gets a value that indicates whether the is empty. + + true if the is empty; otherwise, + false. + + + + Gets a collection containing the keys in the . + + An containing the keys in the + . + + + + Gets a collection containing the values in the . + + An containing the values in + the + . + + + + Gets a value indicating whether the dictionary is read-only. + + true if the is + read-only; otherwise, false. For , this property always returns + false. + + + + Gets a value indicating whether the has a fixed size. + + true if the has a + fixed size; otherwise, false. For , this property always + returns false. + + + + Gets a value indicating whether the is read-only. + + true if the is + read-only; otherwise, false. For , this property always + returns false. + + + + Gets an containing the keys of the . + + An containing the keys of the . + + + + Gets an containing the values in the . + + An containing the values in the . + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key, or a null reference (Nothing in Visual Basic) + if is not in the dictionary or is of a type that is + not assignable to the key type of the . + is a null reference + (Nothing in Visual Basic). + + A value is being assigned, and is of a type that is not assignable to the + key type of the . -or- A value is being + assigned, and is of a type that is not assignable to the value type + of the + + + + + Gets a value indicating whether access to the is + synchronized with the SyncRoot. + + true if access to the is synchronized + (thread safe); otherwise, false. For , this property always + returns false. + + + + Gets an object that can be used to synchronize access to the . This property is not supported. + + The SyncRoot property is not supported. + + + + The number of concurrent writes for which to optimize by default. + + + + + A node in a singly-linked list representing a particular hash table bucket. + + + + + A private class to represent enumeration over the dictionary that implements the + IDictionaryEnumerator interface. + + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + + An interface similar to the one added in .NET 4.0. + + + + The exception that is thrown in a thread upon cancellation of an operation that the thread was executing. + + + Initializes the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + Initializes the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + A cancellation token associated with the operation that was canceled. + + + Gets a token associated with the operation that was canceled. + + + + A dummy replacement for the .NET internal class StackCrawlMark. + + + + + Propogates notification that operations should be canceled. + + + + A may be created directly in an unchangeable canceled or non-canceled state + using the CancellationToken's constructors. However, to have a CancellationToken that can change + from a non-canceled to a canceled state, + CancellationTokenSource must be used. + CancellationTokenSource exposes the associated CancellationToken that may be canceled by the source through its + Token property. + + + Once canceled, a token may not transition to a non-canceled state, and a token whose + is false will never change to one that can be canceled. + + + All members of this struct are thread-safe and may be used concurrently from multiple threads. + + + + + + Internal constructor only a CancellationTokenSource should create a CancellationToken + + + + + Initializes the CancellationToken. + + + The canceled state for the token. + + + Tokens created with this constructor will remain in the canceled state specified + by the parameter. If is false, + both and will be false. + If is true, + both and will be true. + + + + + Registers a delegate that will be called when this CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Determines whether the current CancellationToken instance is equal to the + specified token. + + The other CancellationToken to which to compare this + instance. + True if the instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other object to which to compare this instance. + True if is a CancellationToken + and if the two instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + An associated CancellationTokenSource has been disposed. + + + + Serves as a hash function for a CancellationToken. + + A hash code for the current CancellationToken instance. + + + + Determines whether two CancellationToken instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Determines whether two CancellationToken instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Throws a OperationCanceledException if + this token has had cancellation requested. + + + This method provides functionality equivalent to: + + if (token.IsCancellationRequested) + throw new OperationCanceledException(token); + + + The token has had cancellation requested. + The associated CancellationTokenSource has been disposed. + + + + Returns an empty CancellationToken value. + + + The value returned by this property will be non-cancelable by default. + + + + + Gets whether cancellation has been requested for this token. + + Whether cancellation has been requested for this token. + + + This property indicates whether cancellation has been requested for this token, + either through the token initially being construted in a canceled state, or through + calling Cancel + on the token's associated . + + + If this property is true, it only guarantees that cancellation has been requested. + It does not guarantee that every registered handler + has finished executing, nor that cancellation requests have finished propagating + to all registered handlers. Additional synchronization may be required, + particularly in situations where related objects are being canceled concurrently. + + + + + + Gets whether this token is capable of being in the canceled state. + + + If CanBeCanceled returns false, it is guaranteed that the token will never transition + into a canceled state, meaning that will never + return true. + + + + + Gets a that is signaled when the token is canceled. + + Accessing this property causes a WaitHandle + to be instantiated. It is preferable to only use this property when necessary, and to then + dispose the associated instance at the earliest opportunity (disposing + the source will dispose of this allocated handle). The handle should not be closed or disposed directly. + + The associated CancellationTokenSource has been disposed. + + + + Represents a callback delegate that has been registered with a CancellationToken. + + + To unregister a callback, dispose the corresponding Registration instance. + + + + + Attempts to deregister the item. If it's already being run, this may fail. + Entails a full memory fence. + + True if the callback was found and deregistered, false otherwise. + + + + Disposes of the registration and unregisters the target callback from the associated + CancellationToken. + If the target callback is currently executing this method will wait until it completes, except + in the degenerate cases where a callback method deregisters itself. + + + + + Determines whether two CancellationTokenRegistration + instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + + + + Determines whether two CancellationTokenRegistration instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + + + + Determines whether the current CancellationTokenRegistration instance is equal to the + specified . + + The other object to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other CancellationTokenRegistration to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Serves as a hash function for a CancellationTokenRegistration.. + + A hash code for the current CancellationTokenRegistration instance. + + + + Signals to a that it should be canceled. + + + + is used to instantiate a + (via the source's Token property) + that can be handed to operations that wish to be notified of cancellation or that can be used to + register asynchronous operations for cancellation. That token may have cancellation requested by + calling to the source's Cancel + method. + + + All members of this class, except Dispose, are thread-safe and may be used + concurrently from multiple threads. + + + + + The ID of the thread currently executing the main body of CTS.Cancel() + this helps us to know if a call to ctr.Dispose() is running 'within' a cancellation callback. + This is updated as we move between the main thread calling cts.Cancel() and any syncContexts that are used to + actually run the callbacks. + + + + Initializes the . + + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + However, this overload of Cancel will aggregate any exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + If is true, an exception will immediately propagate out of the + call to Cancel, preventing the remaining callbacks and cancelable operations from being processed. + If is false, this overload will aggregate any + exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + Specifies whether exceptions should immediately propagate. + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Releases the resources used by this . + + + This method is not thread-safe for any other concurrent calls. + + + + + Throws an exception if the source has been disposed. + + + + + InternalGetStaticSource() + + Whether the source should be set. + A static source to be shared among multiple tokens. + + + + Registers a callback object. If cancellation has already occurred, the + callback will have been run by the time this method returns. + + + + + + + + + + Invoke the Canceled event. + + + The handlers are invoked synchronously in LIFO order. + + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The first CancellationToken to observe. + The second CancellationToken to observe. + A CancellationTokenSource that is linked + to the source tokens. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The CancellationToken instances to observe. + A CancellationTokenSource that is linked + to the source tokens. + is null. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Gets whether cancellation has been requested for this CancellationTokenSource. + + Whether cancellation has been requested for this CancellationTokenSource. + + + This property indicates whether cancellation has been requested for this token source, such as + due to a call to its + Cancel method. + + + If this property returns true, it only guarantees that cancellation has been requested. It does not + guarantee that every handler registered with the corresponding token has finished executing, nor + that cancellation requests have finished propagating to all registered handlers. Additional + synchronization may be required, particularly in situations where related objects are being + canceled concurrently. + + + + + + A simple helper to determine whether cancellation has finished. + + + + + A simple helper to determine whether disposal has occured. + + + + + The ID of the thread that is running callbacks. + + + + + Gets the CancellationToken + associated with this . + + The CancellationToken + associated with this . + The token source has been + disposed. + + + + + + + + + + + + + + The currently executing callback + + + + + A helper class for collating the various bits of information required to execute + cancellation callbacks. + + + + + InternalExecuteCallbackSynchronously_GeneralPath + This will be called on the target synchronization context, however, we still need to restore the required execution context + + + + + A sparsely populated array. Elements can be sparse and some null, but this allows for + lock-free additions and growth, and also for constant time removal (by nulling out). + + The kind of elements contained within. + + + + Allocates a new array with the given initial size. + + How many array slots to pre-allocate. + + + + Adds an element in the first available slot, beginning the search from the tail-to-head. + If no slots are available, the array is grown. The method doesn't return until successful. + + The element to add. + Information about where the add happened, to enable O(1) deregistration. + + + + The tail of the doubly linked list. + + + + + A struct to hold a link to the exact spot in an array an element was inserted, enabling + constant time removal later on. + + + + + A fragment of a sparsely populated array, doubly linked. + + The kind of elements contained within. + + + + Provides lazy initialization routines. + + + These routines avoid needing to allocate a dedicated, lazy-initialization instance, instead using + references to ensure targets have been initialized as they are accessed. + + + + + Initializes a target reference type with the type's default constructor if the target has not + already been initialized. + + The refence type of the reference to be initialized. + A reference of type to initialize if it has not + already been initialized. + The initialized reference of type . + Type does not have a default + constructor. + + Permissions to access the constructor of type were missing. + + + + This method may only be used on reference types. To ensure initialization of value + types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initializes a target reference type using the specified function if it has not already been + initialized. + + The reference type of the reference to be initialized. + The reference of type to initialize if it has not + already been initialized. + The invoked to initialize the + reference. + The initialized reference of type . + Type does not have a + default constructor. + returned + null. + + + This method may only be used on reference types, and may + not return a null reference (Nothing in Visual Basic). To ensure initialization of value types or + to allow null reference types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initialize the target using the given delegate (slow path). + + The reference type of the reference to be initialized. + The variable that need to be initialized + The delegate that will be executed to initialize the target + The initialized variable + + + + Initializes a target reference or value type with its default constructor if it has not already + been initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The initialized value of type . + + + + Initializes a target reference or value type with a specified function if it has not already been + initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The invoked to initialize the + reference or value. + The initialized value of type . + + + + Ensure the target is initialized and return the value (slow path). This overload permits nulls + and also works for value type targets. Uses the supplied function to create the value. + + The type of target. + A reference to the target to be initialized. + A reference to a location tracking whether the target has been initialized. + A reference to a location containing a mutual exclusive lock. + + The to invoke in order to produce the lazily-initialized value. + + The initialized object. + + + + Provides a slimmed down version of . + + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads, with the exception of Dispose, which + must only be used when all other operations on the have + completed, and Reset, which should only be used when no other threads are + accessing the event. + + + + + Initializes a new instance of the + class with an initial state of nonsignaled. + + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled. + + true to set the initial state signaled; false to set the initial state + to nonsignaled. + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled and a specified + spin count. + + true to set the initial state to signaled; false to set the initial state + to nonsignaled. + The number of spin waits that will occur before falling back to a true + wait. + is less than + 0 or greater than the maximum allowed value. + + + + Initializes the internal state of the event. + + Whether the event is set initially or not. + The spin count that decides when the event will block. + + + + Helper to ensure the lock object is created before first use. + + + + + This method lazily initializes the event object. It uses CAS to guarantee that + many threads racing to call this at once don't result in more than one event + being stored and used. The event will be signaled or unsignaled depending on + the state of the thin-event itself, with synchronization taken into account. + + True if a new event was created and stored, false otherwise. + + + + Sets the state of the event to signaled, which allows one or more threads waiting on the event to + proceed. + + + + + Private helper to actually perform the Set. + + Indicates whether we are calling Set() during cancellation. + The object has been canceled. + + + + Sets the state of the event to nonsignaled, which causes threads to block. + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Blocks the current thread until the current is set. + + + The maximum number of waiters has been exceeded. + + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current receives a signal, + while observing a . + + The to + observe. + + The maximum number of waiters has been exceeded. + + was + canceled. + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval. + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval, while observing a . + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + The to + observe. + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + was canceled. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval. + + The number of milliseconds to wait, or (-1) to wait indefinitely. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval, while observing a . + + The number of milliseconds to wait, or (-1) to wait indefinitely. + The to + observe. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + was canceled. + + + + Releases all resources used by the current instance of . + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + When overridden in a derived class, releases the unmanaged resources used by the + , and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Throw ObjectDisposedException if the MRES is disposed + + + + + Private helper method to wake up waiters when a cancellationToken gets canceled. + + + + + Private helper method for updating parts of a bit-string state value. + Mainly called from the IsSet and Waiters properties setters + + + Note: the parameter types must be int as CompareExchange cannot take a Uint + + The new value + The mask used to set the bits + + + + Private helper method - performs Mask and shift, particular helpful to extract a field from a packed word. + eg ExtractStatePortionAndShiftRight(0x12345678, 0xFF000000, 24) => 0x12, ie extracting the top 8-bits as a simple integer + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + + + Performs a Mask operation, but does not perform the shift. + This is acceptable for boolean values for which the shift is unnecessary + eg (val & Mask) != 0 is an appropriate way to extract a boolean rather than using + ((val & Mask) >> shiftAmount) == 1 + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + Helper function to measure and update the wait time + + The first time (in Ticks) observed when the wait started. + The orginal wait timeoutout in milliseconds. + The new wait time in milliseconds, -1 if the time expired, -2 if overflow in counters + has occurred. + + + + Gets the underlying object for this . + + The underlying event object fore this . + + Accessing this property forces initialization of an underlying event object if one hasn't + already been created. To simply wait on this , + the public Wait methods should be preferred. + + + + + Gets whether the event is set. + + true if the event has is set; otherwise, false. + + + + Gets the number of spin waits that will be occur before falling back to a true wait. + + + + + How many threads are waiting. + + + + + Provides support for spin-based waiting. + + + + encapsulates common spinning logic. On single-processor machines, yields are + always used instead of busy waits, and on computers with Intel™ processors employing Hyper-Threading™ + technology, it helps to prevent hardware thread starvation. SpinWait encapsulates a good mixture of + spinning and true yielding. + + + is a value type, which means that low-level code can utilize SpinWait without + fear of unnecessary allocation overheads. SpinWait is not generally useful for ordinary applications. + In most cases, you should use the synchronization classes provided by the .NET Framework, such as + . For most purposes where spin waiting is required, however, + the type should be preferred over the System.Threading.Thread.SpinWait method. + + + While SpinWait is designed to be used in concurrent applications, it is not designed to be + used from multiple threads concurrently. SpinWait's members are not thread-safe. If multiple + threads must spin, each should use its own instance of SpinWait. + + + + + + Performs a single spin. + + + This is typically called in a loop, and may change in behavior based on the number of times a + has been called thus far on this instance. + + + + + Resets the spin counter. + + + This makes and behave as though no calls + to had been issued on this instance. If a instance + is reused many times, it may be useful to reset it to avoid yielding too soon. + + + + + Spins until the specified condition is satisfied. + + A delegate to be executed over and over until it returns true. + The argument is null. + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + + A that represents the number of milliseconds to wait, + or a TimeSpan that represents -1 milliseconds to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a negative number + other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than + . + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + The number of milliseconds to wait, or (-1) to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a + negative number other than -1, which represents an infinite time-out. + + + + Gets the number of times has been called on this instance. + + + + + Gets whether the next call to will yield the processor, triggering a + forced context switch. + + Whether the next call to will yield the processor, triggering a + forced context switch. + + On a single-CPU machine, always yields the processor. On machines with + multiple CPUs, may yield after an unspecified number of calls. + + + + + A helper class to get the number of preocessors, it updates the numbers of processors every sampling interval + + + + + Gets the number of available processors + + + + + Gets whether the current machine has only a single processor. + + + + + Represents an asynchronous operation that produces a result at some time in the future. + + + The type of the result produced by this . + + + + instances may be created in a variety of ways. The most common approach is by + using the task's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs a function, the factory's StartNew + method may be used: + + // C# + var t = Task<int>.Factory.StartNew(() => GenerateResult()); + - or - + var t = Task.Factory.StartNew(() => GenerateResult()); + + ' Visual Basic + Dim t = Task<int>.Factory.StartNew(Function() GenerateResult()) + - or - + Dim t = Task.Factory.StartNew(Function() GenerateResult()) + + + + The class also provides constructors that initialize the task but that do not + schedule it for execution. For performance reasons, the StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + Start + method may then be used to schedule the task for execution at a later time. + + + All members of , except for + Dispose, are thread-safe + and may be used from multiple threads concurrently. + + + + + + Represents an asynchronous operation. + + + + instances may be created in a variety of ways. The most common approach is by + using the Task type's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs an action, the factory's StartNew + method may be used: + + // C# + var t = Task.Factory.StartNew(() => DoAction()); + + ' Visual Basic + Dim t = Task.Factory.StartNew(Function() DoAction()) + + + + The class also provides constructors that initialize the Task but that do not + schedule it for execution. For performance reasons, TaskFactory's StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + method may then be used to schedule the task for execution at a later time. + + + All members of , except for , are thread-safe + and may be used from multiple threads concurrently. + + + For operations that return values, the class + should be used. + + + For developers implementing custom debuggers, several internal and private members of Task may be + useful (these may change from release to release). The Int32 m_taskId field serves as the backing + store for the property, however accessing this field directly from a debugger may be + more efficient than accessing the same value through the property's getter method (the + s_taskIdCounter Int32 counter is used to retrieve the next available ID for a Task). Similarly, the + Int32 m_stateFlags field stores information about the current lifecycle stage of the Task, + information also accessible through the property. The m_action System.Object + field stores a reference to the Task's delegate, and the m_stateObject System.Object field stores the + async state passed to the Task by the developer. Finally, for debuggers that parse stack frames, the + InternalWait method serves a potential marker for when a Task is entering a wait operation. + + + + + + A type initializer that runs with the appropriate permissions. + + + + + Initializes a new with the specified action. + + The delegate that represents the code to execute in the Task. + The argument is null. + + + + Initializes a new with the specified action and CancellationToken. + + The delegate that represents the code to execute in the Task. + The CancellationToken + that will be assigned to the new Task. + The argument is null. + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and state. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + An internal constructor used by the factory methods on task and its descendent(s). + This variant does not capture the ExecutionContext; it is up to the caller to do that. + + An action to execute. + Optional state to pass to the action. + Parent of Task. + A CancellationToken for the task. + A task scheduler under which the task will run. + Options to control its execution. + Internal options to control its execution + + + + Common logic used by the following internal ctors: + Task() + Task(object action, object state, Task parent, TaskCreationOptions options, TaskScheduler taskScheduler) + + ASSUMES THAT m_creatingTask IS ALREADY SET. + + + Action for task to execute. + Object to which to pass to action (may be null) + Task scheduler on which to run thread (only used by continuation tasks). + A CancellationToken for the Task. + Options to customize behavior of Task. + Internal options to customize behavior of Task. + + + + Checks if we registered a CT callback during construction, and deregisters it. + This should be called when we know the registration isn't useful anymore. Specifically from Finish() if the task has completed + successfully or with an exception. + + + + + Captures the ExecutionContext so long as flow isn't suppressed. + + A stack crawl mark pointing to the frame of the caller. + + + + Internal function that will be called by a new child task to add itself to + the children list of the parent (this). + + Since a child task can only be created from the thread executing the action delegate + of this task, reentrancy is neither required nor supported. This should not be called from + anywhere other than the task construction/initialization codepaths. + + + + + Starts the , scheduling it for execution to the current TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time + will result in an exception. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Starts the , scheduling it for execution to the specified TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + The TaskScheduler with which to associate + and execute this task. + + + The argument is null. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the current TaskScheduler. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + Tasks executed with will be associated with the current TaskScheduler. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the scheduler provided. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + The parameter + is null. + The scheduler on which to attempt to run this task inline. + + + + Throws an exception if the task has been disposed, and hence can no longer be accessed. + + The task has been disposed. + + + + Sets the internal completion event. + + + + + Disposes the , releasing all of its unmanaged resources. + + + Unlike most of the members of , this method is not thread-safe. + Also, may only be called on a that is in one of + the final states: RanToCompletion, + Faulted, or + Canceled. + + + The exception that is thrown if the is not in + one of the final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Disposes the , releasing all of its unmanaged resources. + + + A Boolean value that indicates whether this method is being called due to a call to . + + + Unlike most of the members of , this method is not thread-safe. + + + + + Schedules the task for execution. + + If true, TASK_STATE_STARTED bit is turned on in + an atomic fashion, making sure that TASK_STATE_CANCELED does not get set + underneath us. If false, TASK_STATE_STARTED bit is OR-ed right in. This + allows us to streamline things a bit for StartNew(), where competing cancellations + are not a problem. + + + + Adds an exception to the list of exceptions this task has thrown. + + An object representing either an Exception or a collection of Exceptions. + + + + Returns a list of exceptions by aggregating the holder's contents. Or null if + no exceptions have been thrown. + + Whether to include a TCE if cancelled. + An aggregate exception, or null if no exceptions have been caught. + + + + Throws an aggregate exception if the task contains exceptions. + + + + + Checks whether this is an attached task, and whether we are being called by the parent task. + And sets the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag based on that. + + This is meant to be used internally when throwing an exception, and when WaitAll is gathering + exceptions for tasks it waited on. If this flag gets set, the implicit wait on children + will skip exceptions to prevent duplication. + + This should only be called when this task has completed with an exception + + + + + + Signals completion of this particular task. + + The bUserDelegateExecuted parameter indicates whether this Finish() call comes following the + full execution of the user delegate. + + If bUserDelegateExecuted is false, it mean user delegate wasn't invoked at all (either due to + a cancellation request, or because this task is a promise style Task). In this case, the steps + involving child tasks (i.e. WaitForChildren) will be skipped. + + + + + + FinishStageTwo is to be executed as soon as we known there are no more children to complete. + It can happen i) either on the thread that originally executed this task (if no children were spawned, or they all completed by the time this task's delegate quit) + ii) or on the thread that executed the last child. + + + + + Final stage of the task completion code path. Notifies the parent (if any) that another of its childre are done, and runs continuations. + This function is only separated out from FinishStageTwo because these two operations are also needed to be called from CancellationCleanupLogic() + + + + + This is called by children of this task when they are completed. + + + + + This is to be called just before the task does its final state transition. + It traverses the list of exceptional children, and appends their aggregate exceptions into this one's exception list + + + + + Special purpose Finish() entry point to be used when the task delegate throws a ThreadAbortedException + This makes a note in the state flags so that we avoid any costly synchronous operations in the finish codepath + such as inlined continuations + + + Indicates whether the ThreadAbortException was added to this task's exception holder. + This should always be true except for the case of non-root self replicating task copies. + + Whether the delegate was executed. + + + + Executes the task. This method will only be called once, and handles bookeeping associated with + self-replicating tasks, in addition to performing necessary exception marshaling. + + The task has already been disposed. + + + + IThreadPoolWorkItem override, which is the entry function for this task when the TP scheduler decides to run it. + + + + + + Outermost entry function to execute this task. Handles all aspects of executing a task on the caller thread. + Currently this is called by IThreadPoolWorkItem.ExecuteWorkItem(), and TaskManager.TryExecuteInline. + + + Performs atomic updates to prevent double execution. Should only be set to true + in codepaths servicing user provided TaskSchedulers. The ConcRT or ThreadPool schedulers don't need this. + + + + The actual code which invokes the body of the task. This can be overriden in derived types. + + + + + Alternate InnerInvoke prototype to be called from ExecuteSelfReplicating() so that + the Parallel Debugger can discover the actual task being invoked. + Details: Here, InnerInvoke is actually being called on the rootTask object while we are actually executing the + childTask. And the debugger needs to discover the childTask, so we pass that down as an argument. + The NoOptimization and NoInlining flags ensure that the childTask pointer is retained, and that this + function appears on the callstack. + + + + + + Performs whatever handling is necessary for an unhandled exception. Normally + this just entails adding the exception to the holder object. + + The exception that went unhandled. + + + + Waits for the to complete execution. + + + The was canceled -or- an exception was thrown during + the execution of the . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A to observe while waiting for the task to complete. + + + The was canceled. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + true if the completed execution within the allotted time; otherwise, + false. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the task to complete. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + The core wait function, which is only accesible internally. It's meant to be used in places in TPL code where + the current context is known or cached. + + + + + Cancels the . + + Indiactes whether we should only cancel non-invoked tasks. + For the default scheduler this option will only be serviced through TryDequeue. + For custom schedulers we also attempt an atomic state transition. + true if the task was successfully canceled; otherwise, false. + The + has been disposed. + + + + Sets the task's cancellation acknowledged flag. + + + + + Runs all of the continuations, as appropriate. + + + + + Helper function to determine whether the current task is in the state desired by the + continuation kind under evaluation. Three possibilities exist: the task failed with + an unhandled exception (OnFailed), the task was canceled before running (OnAborted), + or the task completed successfully (OnCompletedSuccessfully). Note that the last + one includes completing due to cancellation. + + The continuation options under evaluation. + True if the continuation should be run given the task's current state. + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + The that will be assigned to the new continuation task. + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Converts TaskContinuationOptions to TaskCreationOptions, and also does + some validity checking along the way. + + Incoming TaskContinuationOptions + Outgoing TaskCreationOptions + Outgoing InternalTaskOptions + + + + Registers the continuation and possibly runs it (if the task is already finished). + + The continuation task itself. + TaskScheduler with which to associate continuation task. + Restrictions on when the continuation becomes active. + + + + Waits for all of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The was canceled. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Waits for a set of handles in a STA-aware way. In other words, it will wait for each + of the events individually if we're on a STA thread, because MsgWaitForMultipleObjectsEx + can't do a true wait-all due to its hidden message queue event. This is not atomic, + of course, but we only wait on one-way (MRE) events anyway so this is OK. + + An array of wait handles to wait on. + The timeout to use during waits. + The cancellationToken that enables a wait to be canceled. + True if all waits succeeded, false if a timeout occurred. + + + + Internal WaitAll implementation which is meant to be used with small number of tasks, + optimized for Parallel.Invoke and other structured primitives. + + + + + This internal function is only meant to be called by WaitAll() + If the completed task is canceled or it has other exceptions, here we will add those + into the passed in exception list (which will be lazily initialized here). + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + The index of the completed task in the array argument. + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + The was canceled. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Gets a unique ID for this Task instance. + + + Task IDs are assigned on-demand and do not necessarily represent the order in the which Task + instances were created. + + + + + Returns the unique ID of the currently executing Task. + + + + + Gets the Task instance currently executing, or + null if none exists. + + + + + Gets the Exception that caused the Task to end prematurely. If the Task completed successfully or has not yet thrown any + exceptions, this will return null. + + + Tasks that throw unhandled exceptions store the resulting exception and propagate it wrapped in a + in calls to Wait + or in accesses to the property. Any exceptions not observed by the time + the Task instance is garbage collected will be propagated on the finalizer thread. + + + The Task + has been disposed. + + + + + Gets the TaskStatus of this Task. + + + + + Gets whether this Task instance has completed + execution due to being canceled. + + + A Task will complete in Canceled state either if its CancellationToken + was marked for cancellation before the task started executing, or if the task acknowledged the cancellation request on + its already signaled CancellationToken by throwing an + OperationCanceledException2 that bears the same + CancellationToken. + + + + + Returns true if this task has a cancellation token and it was signaled. + To be used internally in execute entry codepaths. + + + + + This internal property provides access to the CancellationToken that was set on the task + when it was constructed. + + + + + Gets whether this threw an OperationCanceledException2 while its CancellationToken was signaled. + + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Checks whether this task has been disposed. + + + + + Gets the TaskCreationOptions used + to create this task. + + + + + Gets a that can be used to wait for the task to + complete. + + + Using the wait functionality provided by + should be preferred over using for similar + functionality. + + + The has been disposed. + + + + + Gets the state object supplied when the Task was created, + or null if none was supplied. + + + + + Gets an indication of whether the asynchronous operation completed synchronously. + + true if the asynchronous operation completed synchronously; otherwise, false. + + + + Provides access to the TaskScheduler responsible for executing this Task. + + + + + Provides access to factory methods for creating and instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on TaskFactory. + + + + + Provides an event that can be used to wait for completion. + Only called by Wait*(), which means that we really do need to instantiate a completion event. + + + + + Determines whether this is the root task of a self replicating group. + + + + + Determines whether the task is a replica itself. + + + + + The property formerly known as IsFaulted. + + + + + Gets whether the completed due to an unhandled exception. + + + If is true, the Task's will be equal to + TaskStatus.Faulted, and its + property will be non-null. + + + + + Checks whether the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag is set, + This will only be used by the implicit wait to prevent double throws + + + + + + Checks whether the body was ever invoked. Used by task scheduler code to verify custom schedulers actually ran the task. + + + + + A structure to hold continuation information. + + + + + Constructs a new continuation structure. + + The task to be activated. + The continuation options. + The scheduler to use for the continuation. + + + + Invokes the continuation for the target completion task. + + The completed task. + Whether the continuation can be inlined. + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The argument is null. + + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The to be assigned to this task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and state. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Creates a new future object. + + The parent task for this future. + A function that yields the future value. + The task scheduler which will be used to execute the future. + The CancellationToken for the task. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Creates a new future object. + + The parent task for this future. + An object containing data to be used by the action; may be null. + A function that yields the future value. + The CancellationToken for the task. + The task scheduler which will be used to execute the future. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Evaluates the value selector of the Task which is passed in as an object and stores the result. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new task. + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . This task's completion state will be transferred to the task returned + from the ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be passed as + an argument this completed task. + + The that will be assigned to the new task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . + This task's completion state will be transferred to the task returned from the + ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Gets the result value of this . + + + The get accessor for this property ensures that the asynchronous operation is complete before + returning. Once the result of the computation is available, it is stored and will be returned + immediately on later calls to . + + + + + Provides access to factory methods for creating instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on the factory type. + + + + + Provides support for creating and scheduling + Task{TResult} objects. + + The type of the results that are available though + the Task{TResult} objects that are associated with + the methods in this class. + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task{TResult}.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the default configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory{TResult}. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory{TResult}. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The that will be assigned to the new task. + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory{TResult}. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory{TResult}. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory{TResult}. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents the current stage in the lifecycle of a . + + + + + The task has been initialized but has not yet been scheduled. + + + + + The task is waiting to be activated and scheduled internally by the .NET Framework infrastructure. + + + + + The task has been scheduled for execution but has not yet begun executing. + + + + + The task is running but has not yet completed. + + + + + The task has finished executing and is implicitly waiting for + attached child tasks to complete. + + + + + The task completed execution successfully. + + + + + The task acknowledged cancellation by throwing an OperationCanceledException2 with its own CancellationToken + while the token was in signaled state, or the task's CancellationToken was already signaled before the + task started executing. + + + + + The task completed due to an unhandled exception. + + + + + Specifies flags that control optional behavior for the creation and execution of tasks. + + + + + Specifies that the default behavior should be used. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides a hint to the + TaskScheduler that oversubscription may be + warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Task creation flags which are only used internally. + + + + Specifies "No internal task options" + + + Used to filter out internal vs. public task creation options. + + + Specifies that the task will be queued by the runtime before handing it over to the user. + This flag will be used to skip the cancellationtoken registration step, which is only meant for unstarted tasks. + + + + Specifies flags that control optional behavior for the creation and execution of continuation tasks. + + + + + Default = "Continue on any, no task options, run asynchronously" + Specifies that the default behavior should be used. Continuations, by default, will + be scheduled when the antecedent task completes, regardless of the task's final TaskStatus. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides + a hint to the TaskScheduler that + oversubscription may be warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Specifies that the continuation task should not be scheduled if its antecedent ran to completion. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled + exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent was canceled. This + option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent ran to + completion. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent threw an + unhandled exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent was canceled. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be executed synchronously. With this option + specified, the continuation will be run on the same thread that causes the antecedent task to + transition into its final state. If the antecedent is already complete when the continuation is + created, the continuation will run on the thread creating the continuation. Only very + short-running continuations should be executed synchronously. + + + + + Represents an exception used to communicate task cancellation. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + Initializes a new instance of the class + with a reference to the that has been canceled. + + A task that has been canceled. + + + + Gets the task associated with this exception. + + + It is permissible for no Task to be associated with a + , in which case + this property will return null. + + + + + Represents the producer side of a unbound to a + delegate, providing access to the consumer side through the property. + + + + It is often the case that a is desired to + represent another asynchronous operation. + TaskCompletionSource is provided for this purpose. It enables + the creation of a task that can be handed out to consumers, and those consumers can use the members + of the task as they would any other. However, unlike most tasks, the state of a task created by a + TaskCompletionSource is controlled explicitly by the methods on TaskCompletionSource. This enables the + completion of the external asynchronous operation to be propagated to the underlying Task. The + separation also ensures that consumers are not able to transition the state without access to the + corresponding TaskCompletionSource. + + + All members of are thread-safe + and may be used from multiple threads concurrently. + + + The type of the result value assocatied with this . + + + + Creates a . + + + + + Creates a + with the specified options. + + + The created + by this instance and accessible through its property + will be instantiated using the specified . + + The options to use when creating the underlying + . + + The represent options invalid for use + with a . + + + + + Creates a + with the specified state. + + The state to use as the underlying + 's AsyncState. + + + + Creates a with + the specified state and options. + + The options to use when creating the underlying + . + The state to use as the underlying + 's AsyncState. + + The represent options invalid for use + with a . + + + + + Attempts to transition the underlying + into the + Faulted + state. + + The exception to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + The was disposed. + + + + Attempts to transition the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + There are one or more null elements in . + The collection is empty. + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The exception to bind to this . + The argument is null. + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + The argument is null. + There are one or more null elements in . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Canceled + state. + + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + Canceled + state. + + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Gets the created + by this . + + + This property enables a consumer access to the that is controlled by this instance. + The , , + , and + methods (and their "Try" variants) on this instance all result in the relevant state + transitions on this underlying Task. + + + + + An exception holder manages a list of exceptions for one particular task. + It offers the ability to aggregate, but more importantly, also offers intrinsic + support for propagating unhandled exceptions that are never observed. It does + this by aggregating and throwing if the holder is ever GC'd without the holder's + contents ever having been requested (e.g. by a Task.Wait, Task.get_Exception, etc). + + + + + Creates a new holder; it will be registered for finalization. + + The task this holder belongs to. + + + + A finalizer that repropagates unhandled exceptions. + + + + + Add an exception to the internal list. This will ensure the holder is + in the proper state (handled/unhandled) depending on the list's contents. + + An exception object (either an Exception or an + IEnumerable{Exception}) to add to the list. + + + + A private helper method that ensures the holder is considered + unhandled, i.e. it is registered for finalization. + + + + + A private helper method that ensures the holder is considered + handled, i.e. it is not registered for finalization. + + Whether this is called from the finalizer thread. + + + + Allocates a new aggregate exception and adds the contents of the list to + it. By calling this method, the holder assumes exceptions to have been + "observed", such that the finalization check will be subsequently skipped. + + Whether this is being called from a finalizer. + An extra exception to be included (optionally). + The aggregate exception to throw. + + + + Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of + instances. + + + + + Creates a proxy Task that represents the + asynchronous operation of a Task{Task}. + + + It is often useful to be able to return a Task from a + Task{TResult}, where the inner Task represents work done as part of the outer Task{TResult}. However, + doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior. Unwrap + solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}. + + The Task{Task} to unwrap. + The exception that is thrown if the + argument is null. + A Task that represents the asynchronous operation of the provided Task{Task}. + + + + Creates a proxy Task{TResult} that represents the + asynchronous operation of a Task{Task{TResult}}. + + + It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult} + represents work done as part of the outer Task{TResult}. However, doing so results in a Task{Task{TResult}}, + which, if not dealt with carefully, could produce unexpected behavior. Unwrap solves this problem by + creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}. + + The Task{Task{TResult}} to unwrap. + The exception that is thrown if the + argument is null. + A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}. /// Unwraps a Task that returns another Task. + + + + Provides support for creating and scheduling + Tasks. + + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new task. + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Check validity of options passed to FromAsync method + + The options to be validated. + determines type of FromAsync method that called this method + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents an abstract scheduler for tasks. + + + + TaskScheduler acts as the extension point for all + pluggable scheduling logic. This includes mechanisms such as how to schedule a task for execution, and + how scheduled tasks should be exposed to debuggers. + + + All members of the abstract type are thread-safe + and may be used from multiple threads concurrently. + + + + + + Queues a Task to the scheduler. + + + + A class derived from TaskScheduler + implements this method to accept tasks being scheduled on the scheduler. + A typical implementation would store the task in an internal data structure, which would + be serviced by threads that would execute those tasks at some time in the future. + + + This method is only meant to be called by the .NET Framework and + should not be called directly by the derived class. This is necessary + for maintaining the consistency of the system. + + + The Task to be queued. + The argument is null. + + + + Determines whether the provided Task + can be executed synchronously in this call, and if it can, executes it. + + + + A class derived from TaskScheduler implements this function to + support inline execution of a task on a thread that initiates a wait on that task object. Inline + execution is optional, and the request may be rejected by returning false. However, better + scalability typically results the more tasks that can be inlined, and in fact a scheduler that + inlines too little may be prone to deadlocks. A proper implementation should ensure that a + request executing under the policies guaranteed by the scheduler can successfully inline. For + example, if a scheduler uses a dedicated thread to execute tasks, any inlining requests from that + thread should succeed. + + + If a scheduler decides to perform the inline execution, it should do so by calling to the base + TaskScheduler's + TryExecuteTask method with the provided task object, propagating + the return value. It may also be appropriate for the scheduler to remove an inlined task from its + internal data structures if it decides to honor the inlining request. Note, however, that under + some circumstances a scheduler may be asked to inline a task that was not previously provided to + it with the method. + + + The derived scheduler is responsible for making sure that the calling thread is suitable for + executing the given task as far as its own scheduling and execution policies are concerned. + + + The Task to be + executed. + A Boolean denoting whether or not task has previously been + queued. If this parameter is True, then the task may have been previously queued (scheduled); if + False, then the task is known not to have been queued, and this call is being made in order to + execute the task inline without queueing it. + A Boolean value indicating whether the task was executed inline. + The argument is + null. + The was already + executed. + + + + Generates an enumerable of Task instances + currently queued to the scheduler waiting to be executed. + + + + A class derived from implements this method in order to support + integration with debuggers. This method will only be invoked by the .NET Framework when the + debugger requests access to the data. The enumerable returned will be traversed by debugging + utilities to access the tasks currently queued to this scheduler, enabling the debugger to + provide a representation of this information in the user interface. + + + It is important to note that, when this method is called, all other threads in the process will + be frozen. Therefore, it's important to avoid synchronization with other threads that may lead to + blocking. If synchronization is necessary, the method should prefer to throw a + than to block, which could cause a debugger to experience delays. Additionally, this method and + the enumerable returned must not modify any globally visible state. + + + The returned enumerable should never be null. If there are currently no queued tasks, an empty + enumerable should be returned instead. + + + For developers implementing a custom debugger, this method shouldn't be called directly, but + rather this functionality should be accessed through the internal wrapper method + GetScheduledTasksForDebugger: + internal Task[] GetScheduledTasksForDebugger(). This method returns an array of tasks, + rather than an enumerable. In order to retrieve a list of active schedulers, a debugger may use + another internal method: internal static TaskScheduler[] GetTaskSchedulersForDebugger(). + This static method returns an array of all active TaskScheduler instances. + GetScheduledTasksForDebugger then may be used on each of these scheduler instances to retrieve + the list of scheduled tasks for each. + + + An enumerable that allows traversal of tasks currently queued to this scheduler. + + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Retrieves some thread static state that can be cached and passed to multiple + TryRunInline calls, avoiding superflous TLS fetches. + + A bag of TLS state (or null if none exists). + + + + Attempts to execute the target task synchronously. + + The task to run. + True if the task may have been previously queued, + false if the task was absolutely not previously queued. + The state retrieved from GetThreadStatics + True if it ran, false otherwise. + + + + Attempts to dequeue a Task that was previously queued to + this scheduler. + + The Task to be dequeued. + A Boolean denoting whether the argument was successfully dequeued. + The argument is null. + + + + Notifies the scheduler that a work item has made progress. + + + + + Initializes the . + + + + + Frees all resources associated with this scheduler. + + + + + Creates a + associated with the current . + + + All Task instances queued to + the returned scheduler will be executed through a call to the + Post method + on that context. + + + A associated with + the current SynchronizationContext, as + determined by SynchronizationContext.Current. + + + The current SynchronizationContext may not be used as a TaskScheduler. + + + + + Attempts to execute the provided Task + on this scheduler. + + + + Scheduler implementations are provided with Task + instances to be executed through either the method or the + method. When the scheduler deems it appropriate to run the + provided task, should be used to do so. TryExecuteTask handles all + aspects of executing a task, including action invocation, exception handling, state management, + and lifecycle control. + + + must only be used for tasks provided to this scheduler by the .NET + Framework infrastructure. It should not be used to execute arbitrary tasks obtained through + custom mechanisms. + + + + A Task object to be executed. + + The is not associated with this scheduler. + + A Boolean that is true if was successfully executed, false if it + was not. A common reason for execution failure is that the task had previously been executed or + is in the process of being executed by another thread. + + + + Provides an array of all queued Task instances + for the debugger. + + + The returned array is populated through a call to . + Note that this function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of Task instances. + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Provides an array of all active TaskScheduler + instances for the debugger. + + + This function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of TaskScheduler instances. + + + + Registers a new TaskScheduler instance in the global collection of schedulers. + + + + + Removes a TaskScheduler instance from the global collection of schedulers. + + + + + Indicates the maximum concurrency level this + is able to support. + + + + + Indicates whether this is a custom scheduler, in which case the safe code paths will be taken upon task entry + using a CAS to transition from queued state to executing. + + + + + Gets the default TaskScheduler instance. + + + + + Gets the TaskScheduler + associated with the currently executing task. + + + When not called from within a task, will return the scheduler. + + + + + Gets the unique ID for this . + + + + + Occurs when a faulted 's unobserved exception is about to trigger exception escalation + policy, which, by default, would terminate the process. + + + This AppDomain-wide event provides a mechanism to prevent exception + escalation policy (which, by default, terminates the process) from triggering. + Each handler is passed a + instance, which may be used to examine the exception and to mark it as observed. + + + + + Nested class that provides debugger view for TaskScheduler + + + + Default thread pool scheduler. + + + + A TaskScheduler implementation that executes all tasks queued to it through a call to + on the + that its associated with. The default constructor for this class binds to the current + + + + + Constructs a SynchronizationContextTaskScheduler associated with + + This constructor expects to be set. + + + + Implemetation of for this scheduler class. + + Simply posts the tasks to be executed on the associated . + + + + + + Implementation of for this scheduler class. + + The task will be executed inline only if the call happens within + the associated . + + + + + + + Implementes the property for + this scheduler class. + + By default it returns 1, because a based + scheduler only supports execution on a single thread. + + + + + Provides data for the event that is raised when a faulted 's + exception goes unobserved. + + + The Exception property is used to examine the exception without marking it + as observed, whereas the method is used to mark the exception + as observed. Marking the exception as observed prevents it from triggering exception escalation policy + which, by default, terminates the process. + + + + + Initializes a new instance of the class + with the unobserved exception. + + The Exception that has gone unobserved. + + + + Marks the as "observed," thus preventing it + from triggering exception escalation policy which, by default, terminates the process. + + + + + Gets whether this exception has been marked as "observed." + + + + + The Exception that went unobserved. + + + + + Represents an exception used to communicate an invalid operation by a + . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class using the default error message and a reference to the inner exception that is the cause of + this exception. + + The exception that is the cause of the current exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl4+win8/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Threading.Tasks.dll new file mode 100644 index 0000000..a60ab26 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Threading.Tasks.xml new file mode 100644 index 0000000..42c08c5 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/System.Threading.Tasks.xml @@ -0,0 +1,475 @@ + + + + System.Threading.Tasks + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+sl5+win8+wp8+wpa81/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Threading.Tasks.dll new file mode 100644 index 0000000..a60ab26 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Threading.Tasks.xml new file mode 100644 index 0000000..42c08c5 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/System.Threading.Tasks.xml @@ -0,0 +1,475 @@ + + + + System.Threading.Tasks + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8+wp8+wpa81/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.IO.dll new file mode 100644 index 0000000..26cd551 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.IO.xml new file mode 100644 index 0000000..2fbeb94 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.IO.xml @@ -0,0 +1,8 @@ + + + + System.IO + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Threading.Tasks.dll new file mode 100644 index 0000000..a60ab26 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Threading.Tasks.xml new file mode 100644 index 0000000..42c08c5 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/System.Threading.Tasks.xml @@ -0,0 +1,475 @@ + + + + System.Threading.Tasks + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net40+win8/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net45+win8+wp8+wpa81/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net45+win8+wp8+wpa81/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net45+win8+wpa81/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net45+win8+wpa81/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net451+win81+wpa81/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net451+win81+wpa81/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net451+win81/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-net451+win81/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-win81+wp81+wpa81/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/portable-win81+wp81+wpa81/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Runtime.dll new file mode 100644 index 0000000..18e255b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Runtime.xml new file mode 100644 index 0000000..e711ec0 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Runtime.xml @@ -0,0 +1,860 @@ + + + + System.Runtime + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Argument must be of type {0}.. + + + + + Looks up a localized string similar to The last element of an eight element tuple must be a Tuple.. + + + + + Defines methods to support the comparison of objects for structural equality. + + + + + Determines whether an object is structurally equal to the current instance. + + The object to compare with the current instance. + An object that determines whether the current instance and other are equal. + true if the two objects are equal; otherwise, false. + + + + Returns a hash code for the current instance. + + An object that computes the hash code of the current object. + The hash code for the current instance. + + + + Supports the structural comparison of collection objects. + + + + + Determines whether the current collection object precedes, occurs in the same position as, or follows another object in the sort order. + + The object to compare with the current instance. + An object that compares members of the current collection object with the corresponding members of other. + An integer that indicates the relationship of the current collection object to other. + + This instance and other are not the same type. + + + + + Encapsulates a method that has five parameters and returns a value of the type specified by the TResult parameter. + + The type of the first parameter of the method that this delegate encapsulates. + The type of the second parameter of the method that this delegate encapsulates. + The type of the third parameter of the method that this delegate encapsulates. + The type of the fourth parameter of the method that this delegate encapsulates. + The type of the fifth parameter of the method that this delegate encapsulates. + The type of the return value of the method that this delegate encapsulates. + The first parameter of the method that this delegate encapsulates. + The second parameter of the method that this delegate encapsulates. + The third parameter of the method that this delegate encapsulates. + The fourth parameter of the method that this delegate encapsulates. + The fifth parameter of the method that this delegate encapsulates. + The return value of the method that this delegate encapsulates. + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + + Helper so we can call some tuple methods recursively without knowing the underlying types. + + + + + Provides static methods for creating tuple objects. + + + + + Creates a new 1-tuple, or singleton. + + The type of the only component of the tuple. + The value of the only component of the tuple. + A tuple whose value is (item1). + + + + Creates a new 3-tuple, or pair. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + An 2-tuple (pair) whose value is (item1, item2). + + + + Creates a new 3-tuple, or triple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + An 3-tuple (triple) whose value is (item1, item2, item3). + + + + Creates a new 4-tuple, or quadruple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + An 4-tuple (quadruple) whose value is (item1, item2, item3, item4). + + + + Creates a new 5-tuple, or quintuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + An 5-tuple (quintuple) whose value is (item1, item2, item3, item4, item5). + + + + Creates a new 6-tuple, or sextuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + An 6-tuple (sextuple) whose value is (item1, item2, item3, item4, item5, item6). + + + + Creates a new 7-tuple, or septuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + An 7-tuple (septuple) whose value is (item1, item2, item3, item4, item5, item6, item7). + + + + Creates a new 8-tuple, or octuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The type of the eighth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + The value of the eighth component of the tuple. + An 8-tuple (octuple) whose value is (item1, item2, item3, item4, item5, item6, item7, item8). + + + + Represents a 1-tuple, or singleton. + + The type of the tuple's only component. + + + + Initializes a new instance of the class. + + The value of the current tuple object's single component. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the tuple object's single component. + + + The value of the current tuple object's single component. + + + + + Represents an 2-tuple, or pair. + + The type of the first component of the tuple. + The type of the second component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Represents an 3-tuple, or triple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Represents an 4-tuple, or quadruple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Represents an 5-tuple, or quintuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Represents an 6-tuple, or sextuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Gets the value of the current tuple object's sixth component. + + + The value of the current tuple object's sixth component. + + + + + Represents an 7-tuple, or septuple. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Gets the value of the current tuple object's sixth component. + + + The value of the current tuple object's sixth component. + + + + + Gets the value of the current tuple object's seventh component. + + + The value of the current tuple object's seventh component. + + + + + Represents an n-tuple, where n is 8 or greater. + + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + Any generic Tuple object that defines the types of the tuple's remaining components. + + + + Initializes a new instance of the class. + + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + Any generic Tuple object that contains the values of the tuple's remaining components. + + rest is not a generic Tuple object. + + + + + Returns a value that indicates whether the current tuple object is equal to a specified object. + + The object to compare with this instance. + true if the current instance is equal to the specified object; otherwise, false. + + + + Calculates the hash code for the current tuple object. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this tuple instance. + + The string representation of this tuple object. + + + + Gets the value of the current tuple object's first component. + + + The value of the current tuple object's first component. + + + + + Gets the value of the current tuple object's second component. + + + The value of the current tuple object's second component. + + + + + Gets the value of the current tuple object's third component. + + + The value of the current tuple object's third component. + + + + + Gets the value of the current tuple object's fourth component. + + + The value of the current tuple object's fourth component. + + + + + Gets the value of the current tuple object's fifth component. + + + The value of the current tuple object's fifth component. + + + + + Gets the value of the current tuple object's sixth component. + + + The value of the current tuple object's sixth component. + + + + + Gets the value of the current tuple object's seventh component. + + + The value of the current tuple object's seventh component. + + + + + Gets the current tuple object's remaining components. + + + The value of the current tuple object's remaining components. + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Threading.Tasks.dll new file mode 100644 index 0000000..a089d47 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Threading.Tasks.xml new file mode 100644 index 0000000..5375fda --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/System.Threading.Tasks.xml @@ -0,0 +1,8969 @@ + + + + System.Threading.Tasks + + + + Represents one or more errors that occur during application execution. + + is used to consolidate multiple failures into a single, throwable + exception object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with + a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + The argument + is null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Allocates a new aggregate exception with the specified message and list of inner exceptions. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Returns the that is the root cause of this exception. + + + + + Invokes a handler on each contained by this . + + The predicate to execute for each exception. The predicate accepts as an + argument the to be processed and returns a Boolean to indicate + whether the exception was handled. + + Each invocation of the returns true or false to indicate whether the + was handled. After all invocations, if any exceptions went + unhandled, all unhandled exceptions will be put into a new + which will be thrown. Otherwise, the method simply returns. If any + invocations of the throws an exception, it will halt the processing + of any more exceptions and immediately propagate the thrown exception as-is. + + An exception contained by this was not handled. + The argument is + null. + + + + Flattens an instances into a single, new instance. + + A new, flattened . + + If any inner exceptions are themselves instances of + , this method will recursively flatten all of them. The + inner exceptions returned in the new + will be the union of all of the the inner exceptions from exception tree rooted at the provided + instance. + + + + + Creates and returns a string representation of the current . + + A string representation of the current exception. + + + + Gets a read-only collection of the instances that caused the + current exception. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to One or more errors occurred.. + + + + + Looks up a localized string similar to An element of innerExceptions was null.. + + + + + Looks up a localized string similar to {0}{1}---> (Inner Exception #{2}) {3}{4}{5}. + + + + + Looks up a localized string similar to No tokens were supplied.. + + + + + Looks up a localized string similar to The CancellationTokenSource associated with this CancellationToken has been disposed.. + + + + + Looks up a localized string similar to The CancellationTokenSource has been disposed.. + + + + + Looks up a localized string similar to The SyncRoot property may not be used for the synchronization of concurrent collections.. + + + + + Looks up a localized string similar to The array is multidimensional, or the type parameter for the set cannot be cast automatically to the type of the destination array.. + + + + + Looks up a localized string similar to The index is equal to or greater than the length of the array, or the number of elements in the dictionary is greater than the available space from index to the end of the destination array.. + + + + + Looks up a localized string similar to The capacity argument must be greater than or equal to zero.. + + + + + Looks up a localized string similar to The concurrencyLevel argument must be positive.. + + + + + Looks up a localized string similar to The index argument is less than zero.. + + + + + Looks up a localized string similar to TKey is a reference type and item.Key is null.. + + + + + Looks up a localized string similar to The key already existed in the dictionary.. + + + + + Looks up a localized string similar to The source argument contains duplicate keys.. + + + + + Looks up a localized string similar to The key was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The value was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The lazily-initialized type does not have a public, parameterless constructor.. + + + + + Looks up a localized string similar to ValueFactory returned null.. + + + + + Looks up a localized string similar to The spinCount argument must be in the range 0 to {0}, inclusive.. + + + + + Looks up a localized string similar to There are too many threads currently waiting on the event. A maximum of {0} waiting threads are supported.. + + + + + Looks up a localized string similar to The event has been disposed.. + + + + + Looks up a localized string similar to The operation was canceled.. + + + + + Looks up a localized string similar to The condition argument is null.. + + + + + Looks up a localized string similar to The timeout must represent a value between -1 and Int32.MaxValue, inclusive.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions combined LongRunning and ExecuteSynchronously. Synchronous continuations should not be long running.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions excluded all continuation kinds.. + + + + + Looks up a localized string similar to (Internal)An attempt was made to create a LongRunning SelfReplicating task.. + + + + + Looks up a localized string similar to The value needs to translate in milliseconds to -1 (signifying an infinite timeout), 0 or a positive integer less than or equal to Int32.MaxValue.. + + + + + Looks up a localized string similar to The value needs to be either -1 (signifying an infinite timeout), 0 or a positive integer.. + + + + + Looks up a localized string similar to A task may only be disposed if it is in a completion state (RanToCompletion, Faulted or Canceled).. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.LongRunning in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.PreferFairness in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating in calls to FromAsync.. + + + + + Looks up a localized string similar to FromAsync was called with a TaskManager that had already shut down.. + + + + + Looks up a localized string similar to The tasks argument contains no tasks.. + + + + + Looks up a localized string similar to It is invalid to exclude specific continuation kinds for continuations off of multiple tasks.. + + + + + Looks up a localized string similar to The tasks argument included a null value.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that was already started.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a continuation task.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task not bound to a delegate, such as the task returned from an asynchronous method.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that has already completed.. + + + + + Looks up a localized string similar to Start may not be called on a task that was already started.. + + + + + Looks up a localized string similar to Start may not be called on a continuation task.. + + + + + Looks up a localized string similar to Start may not be called on a task with null action.. + + + + + Looks up a localized string similar to Start may not be called on a promise-style task.. + + + + + Looks up a localized string similar to Start may not be called on a task that has completed.. + + + + + Looks up a localized string similar to The task has been disposed.. + + + + + Looks up a localized string similar to The tasks array included at least one null element.. + + + + + Looks up a localized string similar to The awaited task has not yet completed.. + + + + + Looks up a localized string similar to A task was canceled.. + + + + + Looks up a localized string similar to The exceptions collection was empty.. + + + + + Looks up a localized string similar to The exceptions collection included at least one null element.. + + + + + Looks up a localized string similar to A Task's exception(s) were not observed either by Waiting on the Task or accessing its Exception property. As a result, the unobserved exception was rethrown by the finalizer thread.. + + + + + Looks up a localized string similar to (Internal)Expected an Exception or an IEnumerable<Exception>. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was already executed.. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was previously queued to a different TaskScheduler.. + + + + + Looks up a localized string similar to The current SynchronizationContext may not be used as a TaskScheduler.. + + + + + Looks up a localized string similar to The TryExecuteTaskInline call to the underlying scheduler succeeded, but the task body was not invoked.. + + + + + Looks up a localized string similar to An exception was thrown by a TaskScheduler.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating for a Task<TResult>.. + + + + + Looks up a localized string similar to {Not yet computed}. + + + + + Looks up a localized string similar to A task's Exception may only be set directly if the task was created without a function.. + + + + + Looks up a localized string similar to An attempt was made to transition a task to a final state when it had already completed.. + + + + + Represents a thread-safe collection of keys and values. + + The type of the keys in the dictionary. + The type of the values in the dictionary. + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads. + + + + + Initializes a new instance of the + class that is empty, has the default concurrency level, has the default initial capacity, and + uses the default comparer for the key type. + + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the default + comparer for the key type. + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + is + less than 1. + is less than + 0. + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency + level, has the default initial capacity, and uses the default comparer for the key type. + + The whose elements are copied to + the new + . + is a null reference + (Nothing in Visual Basic). + contains one or more + duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the specified + . + + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency level, has the default + initial capacity, and uses the specified + . + + The whose elements are copied to + the new + . + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). -or- + is a null reference (Nothing in Visual Basic). + + + + + Initializes a new instance of the + class that contains elements copied from the specified , + has the specified concurrency level, has the specified initial capacity, and uses the specified + . + + The estimated number of threads that will update the + concurrently. + The whose elements are copied to the new + . + The implementation to use + when comparing keys. + + is a null reference (Nothing in Visual Basic). + -or- + is a null reference (Nothing in Visual Basic). + + + is less than 1. + + contains one or more duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level, has the specified initial capacity, and + uses the specified . + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + The + implementation to use when comparing keys. + + is less than 1. -or- + is less than 0. + + is a null reference + (Nothing in Visual Basic). + + + + Attempts to add the specified key and value to the . + + The key of the element to add. + The value of the element to add. The value can be a null reference (Nothing + in Visual Basic) for reference types. + true if the key/value pair was added to the + successfully; otherwise, false. + is null reference + (Nothing in Visual Basic). + The + contains too many elements. + + + + Determines whether the contains the specified + key. + + The key to locate in the . + true if the contains an element with + the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Attempts to remove and return the the value with the specified key from the + . + + The key of the element to remove and return. + When this method returns, contains the object removed from the + or the default value of + if the operation failed. + true if an object was removed successfully; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Removes the specified key from the dictionary if it exists and returns its associated value. + If matchValue flag is set, the key will be removed only if is associated with a particular + value. + + The key to search for and remove if it exists. + The variable into which the removed value, if found, is stored. + Whether removal of the key is conditional on its value. + The conditional value to compare against if is true + + + + + Attempts to get the value associated with the specified key from the . + + The key of the value to get. + When this method returns, contains the object from + the + with the spedified key or the default value of + , if the operation failed. + true if the key was found in the ; + otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Compares the existing value for the specified key with a specified value, and if they’re equal, + updates the key with a third value. + + The key whose value is compared with and + possibly replaced. + The value that replaces the value of the element with if the comparison results in equality. + The value that is compared to the value of the element with + . + true if the value with was equal to and replaced with ; otherwise, + false. + is a null + reference. + + + + Removes all keys and values from the . + + + + + Copies the elements of the to an array of + type , starting at the + specified array index. + + The one-dimensional array of type + that is the destination of the elements copied from the . The array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Copies the key and value pairs stored in the to a + new array. + + A new array containing a snapshot of key and value pairs copied from the . + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToPairs. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToEntries. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToObjects. + + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Shared internal implementation for inserts and updates. + If key exists, we always return false; and if updateIfExists == true we force update with value; + If key doesn't exist, we always add value and return true; + + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + The function used to generate a value for the key + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value for the key as returned by valueFactory + if the key was not in the dictionary. + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + the value to be added, if the key does not already exist + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value if the key was not in the dictionary. + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The function used to generate a value for an absent key + The function used to generate a new value for an existing key + based on the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The value to be added for an absent key + The function used to generate a new value for an existing key based on + the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds the specified key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + An element with the same key already exists in the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + true if the element is successfully remove; otherwise false. This method also returns + false if + was not found in the original . + + is a null reference + (Nothing in Visual Basic). + + + + Adds the specified value to the + with the specified key. + + The + structure representing the key and value to add to the . + The of is null. + The + contains too many elements. + An element with the same key already exists in the + + + + + Determines whether the + contains a specific key and value. + + The + structure to locate in the . + true if the is found in the ; otherwise, false. + + + + Removes a key and value from the dictionary. + + The + structure representing the key and value to remove from the . + true if the key and value represented by is successfully + found and removed; otherwise, false. + The Key property of is a null reference (Nothing in Visual Basic). + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Adds the specified key and value to the dictionary. + + The object to use as the key. + The object to use as the value. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + is of a type that is not assignable to the key type of the . -or- + is of a type that is not assignable to , + the type of values in the . + -or- A value with the same key already exists in the . + + + + + Gets whether the contains an + element with the specified key. + + The key to locate in the . + true if the contains + an element with the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + Provides an for the + . + An for the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + is a null reference + (Nothing in Visual Basic). + + + + Copies the elements of the to an array, starting + at the specified array index. + + The one-dimensional array that is the destination of the elements copied from + the . The array must have zero-based + indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Replaces the internal table with a larger one. To prevent multiple threads from resizing the + table as a result of races, the table of buckets that was deemed too small is passed in as + an argument to GrowTable(). GrowTable() obtains a lock, and then checks whether the bucket + table has been replaced in the meantime or not. + + Reference to the bucket table that was deemed too small. + + + + Computes the bucket and lock number for a particular key. + + + + + Acquires all locks for this hash table, and increments locksAcquired by the number + of locks that were successfully acquired. The locks are acquired in an increasing + order. + + + + + Acquires a contiguous range of locks for this hash table, and increments locksAcquired + by the number of locks that were successfully acquired. The locks are acquired in an + increasing order. + + + + + Releases a contiguous range of locks. + + + + + Gets a collection containing the keys in the dictionary. + + + + + Gets a collection containing the values in the dictionary. + + + + + A helper method for asserts. + + + + + Get the data array to be serialized + + + + + Construct the dictionary from a previously seiralized one + + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key. If the specified key is not found, a get + operation throws a + , and a set operation creates a new + element with the specified key. + is a null reference + (Nothing in Visual Basic). + The property is retrieved and + + does not exist in the collection. + + + + Gets the number of key/value pairs contained in the . + + The dictionary contains too many + elements. + The number of key/value paris contained in the . + Count has snapshot semantics and represents the number of items in the + at the moment when Count was accessed. + + + + Gets a value that indicates whether the is empty. + + true if the is empty; otherwise, + false. + + + + Gets a collection containing the keys in the . + + An containing the keys in the + . + + + + Gets a collection containing the values in the . + + An containing the values in + the + . + + + + Gets a value indicating whether the dictionary is read-only. + + true if the is + read-only; otherwise, false. For , this property always returns + false. + + + + Gets a value indicating whether the has a fixed size. + + true if the has a + fixed size; otherwise, false. For , this property always + returns false. + + + + Gets a value indicating whether the is read-only. + + true if the is + read-only; otherwise, false. For , this property always + returns false. + + + + Gets an containing the keys of the . + + An containing the keys of the . + + + + Gets an containing the values in the . + + An containing the values in the . + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key, or a null reference (Nothing in Visual Basic) + if is not in the dictionary or is of a type that is + not assignable to the key type of the . + is a null reference + (Nothing in Visual Basic). + + A value is being assigned, and is of a type that is not assignable to the + key type of the . -or- A value is being + assigned, and is of a type that is not assignable to the value type + of the + + + + + Gets a value indicating whether access to the is + synchronized with the SyncRoot. + + true if access to the is synchronized + (thread safe); otherwise, false. For , this property always + returns false. + + + + Gets an object that can be used to synchronize access to the . This property is not supported. + + The SyncRoot property is not supported. + + + + The number of concurrent writes for which to optimize by default. + + + + + A node in a singly-linked list representing a particular hash table bucket. + + + + + A private class to represent enumeration over the dictionary that implements the + IDictionaryEnumerator interface. + + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + + An interface similar to the one added in .NET 4.0. + + + + The exception that is thrown in a thread upon cancellation of an operation that the thread was executing. + + + Initializes the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + Initializes the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + A cancellation token associated with the operation that was canceled. + + + Gets a token associated with the operation that was canceled. + + + + A dummy replacement for the .NET internal class StackCrawlMark. + + + + + Propogates notification that operations should be canceled. + + + + A may be created directly in an unchangeable canceled or non-canceled state + using the CancellationToken's constructors. However, to have a CancellationToken that can change + from a non-canceled to a canceled state, + CancellationTokenSource must be used. + CancellationTokenSource exposes the associated CancellationToken that may be canceled by the source through its + Token property. + + + Once canceled, a token may not transition to a non-canceled state, and a token whose + is false will never change to one that can be canceled. + + + All members of this struct are thread-safe and may be used concurrently from multiple threads. + + + + + + Internal constructor only a CancellationTokenSource should create a CancellationToken + + + + + Initializes the CancellationToken. + + + The canceled state for the token. + + + Tokens created with this constructor will remain in the canceled state specified + by the parameter. If is false, + both and will be false. + If is true, + both and will be true. + + + + + Registers a delegate that will be called when this CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Determines whether the current CancellationToken instance is equal to the + specified token. + + The other CancellationToken to which to compare this + instance. + True if the instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other object to which to compare this instance. + True if is a CancellationToken + and if the two instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + An associated CancellationTokenSource has been disposed. + + + + Serves as a hash function for a CancellationToken. + + A hash code for the current CancellationToken instance. + + + + Determines whether two CancellationToken instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Determines whether two CancellationToken instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Throws a OperationCanceledException if + this token has had cancellation requested. + + + This method provides functionality equivalent to: + + if (token.IsCancellationRequested) + throw new OperationCanceledException(token); + + + The token has had cancellation requested. + The associated CancellationTokenSource has been disposed. + + + + Returns an empty CancellationToken value. + + + The value returned by this property will be non-cancelable by default. + + + + + Gets whether cancellation has been requested for this token. + + Whether cancellation has been requested for this token. + + + This property indicates whether cancellation has been requested for this token, + either through the token initially being construted in a canceled state, or through + calling Cancel + on the token's associated . + + + If this property is true, it only guarantees that cancellation has been requested. + It does not guarantee that every registered handler + has finished executing, nor that cancellation requests have finished propagating + to all registered handlers. Additional synchronization may be required, + particularly in situations where related objects are being canceled concurrently. + + + + + + Gets whether this token is capable of being in the canceled state. + + + If CanBeCanceled returns false, it is guaranteed that the token will never transition + into a canceled state, meaning that will never + return true. + + + + + Gets a that is signaled when the token is canceled. + + Accessing this property causes a WaitHandle + to be instantiated. It is preferable to only use this property when necessary, and to then + dispose the associated instance at the earliest opportunity (disposing + the source will dispose of this allocated handle). The handle should not be closed or disposed directly. + + The associated CancellationTokenSource has been disposed. + + + + Represents a callback delegate that has been registered with a CancellationToken. + + + To unregister a callback, dispose the corresponding Registration instance. + + + + + Attempts to deregister the item. If it's already being run, this may fail. + Entails a full memory fence. + + True if the callback was found and deregistered, false otherwise. + + + + Disposes of the registration and unregisters the target callback from the associated + CancellationToken. + If the target callback is currently executing this method will wait until it completes, except + in the degenerate cases where a callback method deregisters itself. + + + + + Determines whether two CancellationTokenRegistration + instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + + + + Determines whether two CancellationTokenRegistration instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + + + + Determines whether the current CancellationTokenRegistration instance is equal to the + specified . + + The other object to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other CancellationTokenRegistration to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Serves as a hash function for a CancellationTokenRegistration.. + + A hash code for the current CancellationTokenRegistration instance. + + + + Signals to a that it should be canceled. + + + + is used to instantiate a + (via the source's Token property) + that can be handed to operations that wish to be notified of cancellation or that can be used to + register asynchronous operations for cancellation. That token may have cancellation requested by + calling to the source's Cancel + method. + + + All members of this class, except Dispose, are thread-safe and may be used + concurrently from multiple threads. + + + + + The ID of the thread currently executing the main body of CTS.Cancel() + this helps us to know if a call to ctr.Dispose() is running 'within' a cancellation callback. + This is updated as we move between the main thread calling cts.Cancel() and any syncContexts that are used to + actually run the callbacks. + + + + Initializes the . + + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + However, this overload of Cancel will aggregate any exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + If is true, an exception will immediately propagate out of the + call to Cancel, preventing the remaining callbacks and cancelable operations from being processed. + If is false, this overload will aggregate any + exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + Specifies whether exceptions should immediately propagate. + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Releases the resources used by this . + + + This method is not thread-safe for any other concurrent calls. + + + + + Throws an exception if the source has been disposed. + + + + + InternalGetStaticSource() + + Whether the source should be set. + A static source to be shared among multiple tokens. + + + + Registers a callback object. If cancellation has already occurred, the + callback will have been run by the time this method returns. + + + + + + + + + + Invoke the Canceled event. + + + The handlers are invoked synchronously in LIFO order. + + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The first CancellationToken to observe. + The second CancellationToken to observe. + A CancellationTokenSource that is linked + to the source tokens. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The CancellationToken instances to observe. + A CancellationTokenSource that is linked + to the source tokens. + is null. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Gets whether cancellation has been requested for this CancellationTokenSource. + + Whether cancellation has been requested for this CancellationTokenSource. + + + This property indicates whether cancellation has been requested for this token source, such as + due to a call to its + Cancel method. + + + If this property returns true, it only guarantees that cancellation has been requested. It does not + guarantee that every handler registered with the corresponding token has finished executing, nor + that cancellation requests have finished propagating to all registered handlers. Additional + synchronization may be required, particularly in situations where related objects are being + canceled concurrently. + + + + + + A simple helper to determine whether cancellation has finished. + + + + + A simple helper to determine whether disposal has occured. + + + + + The ID of the thread that is running callbacks. + + + + + Gets the CancellationToken + associated with this . + + The CancellationToken + associated with this . + The token source has been + disposed. + + + + + + + + + + + + + + The currently executing callback + + + + + A helper class for collating the various bits of information required to execute + cancellation callbacks. + + + + + InternalExecuteCallbackSynchronously_GeneralPath + This will be called on the target synchronization context, however, we still need to restore the required execution context + + + + + A sparsely populated array. Elements can be sparse and some null, but this allows for + lock-free additions and growth, and also for constant time removal (by nulling out). + + The kind of elements contained within. + + + + Allocates a new array with the given initial size. + + How many array slots to pre-allocate. + + + + Adds an element in the first available slot, beginning the search from the tail-to-head. + If no slots are available, the array is grown. The method doesn't return until successful. + + The element to add. + Information about where the add happened, to enable O(1) deregistration. + + + + The tail of the doubly linked list. + + + + + A struct to hold a link to the exact spot in an array an element was inserted, enabling + constant time removal later on. + + + + + A fragment of a sparsely populated array, doubly linked. + + The kind of elements contained within. + + + + Provides lazy initialization routines. + + + These routines avoid needing to allocate a dedicated, lazy-initialization instance, instead using + references to ensure targets have been initialized as they are accessed. + + + + + Initializes a target reference type with the type's default constructor if the target has not + already been initialized. + + The refence type of the reference to be initialized. + A reference of type to initialize if it has not + already been initialized. + The initialized reference of type . + Type does not have a default + constructor. + + Permissions to access the constructor of type were missing. + + + + This method may only be used on reference types. To ensure initialization of value + types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initializes a target reference type using the specified function if it has not already been + initialized. + + The reference type of the reference to be initialized. + The reference of type to initialize if it has not + already been initialized. + The invoked to initialize the + reference. + The initialized reference of type . + Type does not have a + default constructor. + returned + null. + + + This method may only be used on reference types, and may + not return a null reference (Nothing in Visual Basic). To ensure initialization of value types or + to allow null reference types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initialize the target using the given delegate (slow path). + + The reference type of the reference to be initialized. + The variable that need to be initialized + The delegate that will be executed to initialize the target + The initialized variable + + + + Initializes a target reference or value type with its default constructor if it has not already + been initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The initialized value of type . + + + + Initializes a target reference or value type with a specified function if it has not already been + initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The invoked to initialize the + reference or value. + The initialized value of type . + + + + Ensure the target is initialized and return the value (slow path). This overload permits nulls + and also works for value type targets. Uses the supplied function to create the value. + + The type of target. + A reference to the target to be initialized. + A reference to a location tracking whether the target has been initialized. + A reference to a location containing a mutual exclusive lock. + + The to invoke in order to produce the lazily-initialized value. + + The initialized object. + + + + Provides a slimmed down version of . + + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads, with the exception of Dispose, which + must only be used when all other operations on the have + completed, and Reset, which should only be used when no other threads are + accessing the event. + + + + + Initializes a new instance of the + class with an initial state of nonsignaled. + + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled. + + true to set the initial state signaled; false to set the initial state + to nonsignaled. + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled and a specified + spin count. + + true to set the initial state to signaled; false to set the initial state + to nonsignaled. + The number of spin waits that will occur before falling back to a true + wait. + is less than + 0 or greater than the maximum allowed value. + + + + Initializes the internal state of the event. + + Whether the event is set initially or not. + The spin count that decides when the event will block. + + + + Helper to ensure the lock object is created before first use. + + + + + This method lazily initializes the event object. It uses CAS to guarantee that + many threads racing to call this at once don't result in more than one event + being stored and used. The event will be signaled or unsignaled depending on + the state of the thin-event itself, with synchronization taken into account. + + True if a new event was created and stored, false otherwise. + + + + Sets the state of the event to signaled, which allows one or more threads waiting on the event to + proceed. + + + + + Private helper to actually perform the Set. + + Indicates whether we are calling Set() during cancellation. + The object has been canceled. + + + + Sets the state of the event to nonsignaled, which causes threads to block. + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Blocks the current thread until the current is set. + + + The maximum number of waiters has been exceeded. + + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current receives a signal, + while observing a . + + The to + observe. + + The maximum number of waiters has been exceeded. + + was + canceled. + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval. + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval, while observing a . + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + The to + observe. + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + was canceled. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval. + + The number of milliseconds to wait, or (-1) to wait indefinitely. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval, while observing a . + + The number of milliseconds to wait, or (-1) to wait indefinitely. + The to + observe. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + was canceled. + + + + Releases all resources used by the current instance of . + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + When overridden in a derived class, releases the unmanaged resources used by the + , and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Throw ObjectDisposedException if the MRES is disposed + + + + + Private helper method to wake up waiters when a cancellationToken gets canceled. + + + + + Private helper method for updating parts of a bit-string state value. + Mainly called from the IsSet and Waiters properties setters + + + Note: the parameter types must be int as CompareExchange cannot take a Uint + + The new value + The mask used to set the bits + + + + Private helper method - performs Mask and shift, particular helpful to extract a field from a packed word. + eg ExtractStatePortionAndShiftRight(0x12345678, 0xFF000000, 24) => 0x12, ie extracting the top 8-bits as a simple integer + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + + + Performs a Mask operation, but does not perform the shift. + This is acceptable for boolean values for which the shift is unnecessary + eg (val & Mask) != 0 is an appropriate way to extract a boolean rather than using + ((val & Mask) >> shiftAmount) == 1 + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + Helper function to measure and update the wait time + + The first time (in Ticks) observed when the wait started. + The orginal wait timeoutout in milliseconds. + The new wait time in milliseconds, -1 if the time expired, -2 if overflow in counters + has occurred. + + + + Gets the underlying object for this . + + The underlying event object fore this . + + Accessing this property forces initialization of an underlying event object if one hasn't + already been created. To simply wait on this , + the public Wait methods should be preferred. + + + + + Gets whether the event is set. + + true if the event has is set; otherwise, false. + + + + Gets the number of spin waits that will be occur before falling back to a true wait. + + + + + How many threads are waiting. + + + + + Provides support for spin-based waiting. + + + + encapsulates common spinning logic. On single-processor machines, yields are + always used instead of busy waits, and on computers with Intel™ processors employing Hyper-Threading™ + technology, it helps to prevent hardware thread starvation. SpinWait encapsulates a good mixture of + spinning and true yielding. + + + is a value type, which means that low-level code can utilize SpinWait without + fear of unnecessary allocation overheads. SpinWait is not generally useful for ordinary applications. + In most cases, you should use the synchronization classes provided by the .NET Framework, such as + . For most purposes where spin waiting is required, however, + the type should be preferred over the System.Threading.Thread.SpinWait method. + + + While SpinWait is designed to be used in concurrent applications, it is not designed to be + used from multiple threads concurrently. SpinWait's members are not thread-safe. If multiple + threads must spin, each should use its own instance of SpinWait. + + + + + + Performs a single spin. + + + This is typically called in a loop, and may change in behavior based on the number of times a + has been called thus far on this instance. + + + + + Resets the spin counter. + + + This makes and behave as though no calls + to had been issued on this instance. If a instance + is reused many times, it may be useful to reset it to avoid yielding too soon. + + + + + Spins until the specified condition is satisfied. + + A delegate to be executed over and over until it returns true. + The argument is null. + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + + A that represents the number of milliseconds to wait, + or a TimeSpan that represents -1 milliseconds to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a negative number + other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than + . + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + The number of milliseconds to wait, or (-1) to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a + negative number other than -1, which represents an infinite time-out. + + + + Gets the number of times has been called on this instance. + + + + + Gets whether the next call to will yield the processor, triggering a + forced context switch. + + Whether the next call to will yield the processor, triggering a + forced context switch. + + On a single-CPU machine, always yields the processor. On machines with + multiple CPUs, may yield after an unspecified number of calls. + + + + + A helper class to get the number of preocessors, it updates the numbers of processors every sampling interval + + + + + Gets the number of available processors + + + + + Gets whether the current machine has only a single processor. + + + + + Represents an asynchronous operation that produces a result at some time in the future. + + + The type of the result produced by this . + + + + instances may be created in a variety of ways. The most common approach is by + using the task's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs a function, the factory's StartNew + method may be used: + + // C# + var t = Task<int>.Factory.StartNew(() => GenerateResult()); + - or - + var t = Task.Factory.StartNew(() => GenerateResult()); + + ' Visual Basic + Dim t = Task<int>.Factory.StartNew(Function() GenerateResult()) + - or - + Dim t = Task.Factory.StartNew(Function() GenerateResult()) + + + + The class also provides constructors that initialize the task but that do not + schedule it for execution. For performance reasons, the StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + Start + method may then be used to schedule the task for execution at a later time. + + + All members of , except for + Dispose, are thread-safe + and may be used from multiple threads concurrently. + + + + + + Represents an asynchronous operation. + + + + instances may be created in a variety of ways. The most common approach is by + using the Task type's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs an action, the factory's StartNew + method may be used: + + // C# + var t = Task.Factory.StartNew(() => DoAction()); + + ' Visual Basic + Dim t = Task.Factory.StartNew(Function() DoAction()) + + + + The class also provides constructors that initialize the Task but that do not + schedule it for execution. For performance reasons, TaskFactory's StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + method may then be used to schedule the task for execution at a later time. + + + All members of , except for , are thread-safe + and may be used from multiple threads concurrently. + + + For operations that return values, the class + should be used. + + + For developers implementing custom debuggers, several internal and private members of Task may be + useful (these may change from release to release). The Int32 m_taskId field serves as the backing + store for the property, however accessing this field directly from a debugger may be + more efficient than accessing the same value through the property's getter method (the + s_taskIdCounter Int32 counter is used to retrieve the next available ID for a Task). Similarly, the + Int32 m_stateFlags field stores information about the current lifecycle stage of the Task, + information also accessible through the property. The m_action System.Object + field stores a reference to the Task's delegate, and the m_stateObject System.Object field stores the + async state passed to the Task by the developer. Finally, for debuggers that parse stack frames, the + InternalWait method serves a potential marker for when a Task is entering a wait operation. + + + + + + A type initializer that runs with the appropriate permissions. + + + + + Initializes a new with the specified action. + + The delegate that represents the code to execute in the Task. + The argument is null. + + + + Initializes a new with the specified action and CancellationToken. + + The delegate that represents the code to execute in the Task. + The CancellationToken + that will be assigned to the new Task. + The argument is null. + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and state. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + An internal constructor used by the factory methods on task and its descendent(s). + This variant does not capture the ExecutionContext; it is up to the caller to do that. + + An action to execute. + Optional state to pass to the action. + Parent of Task. + A CancellationToken for the task. + A task scheduler under which the task will run. + Options to control its execution. + Internal options to control its execution + + + + Common logic used by the following internal ctors: + Task() + Task(object action, object state, Task parent, TaskCreationOptions options, TaskScheduler taskScheduler) + + ASSUMES THAT m_creatingTask IS ALREADY SET. + + + Action for task to execute. + Object to which to pass to action (may be null) + Task scheduler on which to run thread (only used by continuation tasks). + A CancellationToken for the Task. + Options to customize behavior of Task. + Internal options to customize behavior of Task. + + + + Checks if we registered a CT callback during construction, and deregisters it. + This should be called when we know the registration isn't useful anymore. Specifically from Finish() if the task has completed + successfully or with an exception. + + + + + Captures the ExecutionContext so long as flow isn't suppressed. + + A stack crawl mark pointing to the frame of the caller. + + + + Internal function that will be called by a new child task to add itself to + the children list of the parent (this). + + Since a child task can only be created from the thread executing the action delegate + of this task, reentrancy is neither required nor supported. This should not be called from + anywhere other than the task construction/initialization codepaths. + + + + + Starts the , scheduling it for execution to the current TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time + will result in an exception. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Starts the , scheduling it for execution to the specified TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + The TaskScheduler with which to associate + and execute this task. + + + The argument is null. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the current TaskScheduler. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + Tasks executed with will be associated with the current TaskScheduler. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the scheduler provided. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + The parameter + is null. + The scheduler on which to attempt to run this task inline. + + + + Throws an exception if the task has been disposed, and hence can no longer be accessed. + + The task has been disposed. + + + + Sets the internal completion event. + + + + + Disposes the , releasing all of its unmanaged resources. + + + Unlike most of the members of , this method is not thread-safe. + Also, may only be called on a that is in one of + the final states: RanToCompletion, + Faulted, or + Canceled. + + + The exception that is thrown if the is not in + one of the final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Disposes the , releasing all of its unmanaged resources. + + + A Boolean value that indicates whether this method is being called due to a call to . + + + Unlike most of the members of , this method is not thread-safe. + + + + + Schedules the task for execution. + + If true, TASK_STATE_STARTED bit is turned on in + an atomic fashion, making sure that TASK_STATE_CANCELED does not get set + underneath us. If false, TASK_STATE_STARTED bit is OR-ed right in. This + allows us to streamline things a bit for StartNew(), where competing cancellations + are not a problem. + + + + Adds an exception to the list of exceptions this task has thrown. + + An object representing either an Exception or a collection of Exceptions. + + + + Returns a list of exceptions by aggregating the holder's contents. Or null if + no exceptions have been thrown. + + Whether to include a TCE if cancelled. + An aggregate exception, or null if no exceptions have been caught. + + + + Throws an aggregate exception if the task contains exceptions. + + + + + Checks whether this is an attached task, and whether we are being called by the parent task. + And sets the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag based on that. + + This is meant to be used internally when throwing an exception, and when WaitAll is gathering + exceptions for tasks it waited on. If this flag gets set, the implicit wait on children + will skip exceptions to prevent duplication. + + This should only be called when this task has completed with an exception + + + + + + Signals completion of this particular task. + + The bUserDelegateExecuted parameter indicates whether this Finish() call comes following the + full execution of the user delegate. + + If bUserDelegateExecuted is false, it mean user delegate wasn't invoked at all (either due to + a cancellation request, or because this task is a promise style Task). In this case, the steps + involving child tasks (i.e. WaitForChildren) will be skipped. + + + + + + FinishStageTwo is to be executed as soon as we known there are no more children to complete. + It can happen i) either on the thread that originally executed this task (if no children were spawned, or they all completed by the time this task's delegate quit) + ii) or on the thread that executed the last child. + + + + + Final stage of the task completion code path. Notifies the parent (if any) that another of its childre are done, and runs continuations. + This function is only separated out from FinishStageTwo because these two operations are also needed to be called from CancellationCleanupLogic() + + + + + This is called by children of this task when they are completed. + + + + + This is to be called just before the task does its final state transition. + It traverses the list of exceptional children, and appends their aggregate exceptions into this one's exception list + + + + + Special purpose Finish() entry point to be used when the task delegate throws a ThreadAbortedException + This makes a note in the state flags so that we avoid any costly synchronous operations in the finish codepath + such as inlined continuations + + + Indicates whether the ThreadAbortException was added to this task's exception holder. + This should always be true except for the case of non-root self replicating task copies. + + Whether the delegate was executed. + + + + Executes the task. This method will only be called once, and handles bookeeping associated with + self-replicating tasks, in addition to performing necessary exception marshaling. + + The task has already been disposed. + + + + IThreadPoolWorkItem override, which is the entry function for this task when the TP scheduler decides to run it. + + + + + + Outermost entry function to execute this task. Handles all aspects of executing a task on the caller thread. + Currently this is called by IThreadPoolWorkItem.ExecuteWorkItem(), and TaskManager.TryExecuteInline. + + + Performs atomic updates to prevent double execution. Should only be set to true + in codepaths servicing user provided TaskSchedulers. The ConcRT or ThreadPool schedulers don't need this. + + + + The actual code which invokes the body of the task. This can be overriden in derived types. + + + + + Alternate InnerInvoke prototype to be called from ExecuteSelfReplicating() so that + the Parallel Debugger can discover the actual task being invoked. + Details: Here, InnerInvoke is actually being called on the rootTask object while we are actually executing the + childTask. And the debugger needs to discover the childTask, so we pass that down as an argument. + The NoOptimization and NoInlining flags ensure that the childTask pointer is retained, and that this + function appears on the callstack. + + + + + + Performs whatever handling is necessary for an unhandled exception. Normally + this just entails adding the exception to the holder object. + + The exception that went unhandled. + + + + Waits for the to complete execution. + + + The was canceled -or- an exception was thrown during + the execution of the . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A to observe while waiting for the task to complete. + + + The was canceled. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + true if the completed execution within the allotted time; otherwise, + false. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the task to complete. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + The core wait function, which is only accesible internally. It's meant to be used in places in TPL code where + the current context is known or cached. + + + + + Cancels the . + + Indiactes whether we should only cancel non-invoked tasks. + For the default scheduler this option will only be serviced through TryDequeue. + For custom schedulers we also attempt an atomic state transition. + true if the task was successfully canceled; otherwise, false. + The + has been disposed. + + + + Sets the task's cancellation acknowledged flag. + + + + + Runs all of the continuations, as appropriate. + + + + + Helper function to determine whether the current task is in the state desired by the + continuation kind under evaluation. Three possibilities exist: the task failed with + an unhandled exception (OnFailed), the task was canceled before running (OnAborted), + or the task completed successfully (OnCompletedSuccessfully). Note that the last + one includes completing due to cancellation. + + The continuation options under evaluation. + True if the continuation should be run given the task's current state. + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + The that will be assigned to the new continuation task. + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Converts TaskContinuationOptions to TaskCreationOptions, and also does + some validity checking along the way. + + Incoming TaskContinuationOptions + Outgoing TaskCreationOptions + Outgoing InternalTaskOptions + + + + Registers the continuation and possibly runs it (if the task is already finished). + + The continuation task itself. + TaskScheduler with which to associate continuation task. + Restrictions on when the continuation becomes active. + + + + Waits for all of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The was canceled. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Waits for a set of handles in a STA-aware way. In other words, it will wait for each + of the events individually if we're on a STA thread, because MsgWaitForMultipleObjectsEx + can't do a true wait-all due to its hidden message queue event. This is not atomic, + of course, but we only wait on one-way (MRE) events anyway so this is OK. + + An array of wait handles to wait on. + The timeout to use during waits. + The cancellationToken that enables a wait to be canceled. + True if all waits succeeded, false if a timeout occurred. + + + + Internal WaitAll implementation which is meant to be used with small number of tasks, + optimized for Parallel.Invoke and other structured primitives. + + + + + This internal function is only meant to be called by WaitAll() + If the completed task is canceled or it has other exceptions, here we will add those + into the passed in exception list (which will be lazily initialized here). + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + The index of the completed task in the array argument. + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + The was canceled. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Gets a unique ID for this Task instance. + + + Task IDs are assigned on-demand and do not necessarily represent the order in the which Task + instances were created. + + + + + Returns the unique ID of the currently executing Task. + + + + + Gets the Task instance currently executing, or + null if none exists. + + + + + Gets the Exception that caused the Task to end prematurely. If the Task completed successfully or has not yet thrown any + exceptions, this will return null. + + + Tasks that throw unhandled exceptions store the resulting exception and propagate it wrapped in a + in calls to Wait + or in accesses to the property. Any exceptions not observed by the time + the Task instance is garbage collected will be propagated on the finalizer thread. + + + The Task + has been disposed. + + + + + Gets the TaskStatus of this Task. + + + + + Gets whether this Task instance has completed + execution due to being canceled. + + + A Task will complete in Canceled state either if its CancellationToken + was marked for cancellation before the task started executing, or if the task acknowledged the cancellation request on + its already signaled CancellationToken by throwing an + OperationCanceledException2 that bears the same + CancellationToken. + + + + + Returns true if this task has a cancellation token and it was signaled. + To be used internally in execute entry codepaths. + + + + + This internal property provides access to the CancellationToken that was set on the task + when it was constructed. + + + + + Gets whether this threw an OperationCanceledException2 while its CancellationToken was signaled. + + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Checks whether this task has been disposed. + + + + + Gets the TaskCreationOptions used + to create this task. + + + + + Gets a that can be used to wait for the task to + complete. + + + Using the wait functionality provided by + should be preferred over using for similar + functionality. + + + The has been disposed. + + + + + Gets the state object supplied when the Task was created, + or null if none was supplied. + + + + + Gets an indication of whether the asynchronous operation completed synchronously. + + true if the asynchronous operation completed synchronously; otherwise, false. + + + + Provides access to the TaskScheduler responsible for executing this Task. + + + + + Provides access to factory methods for creating and instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on TaskFactory. + + + + + Provides an event that can be used to wait for completion. + Only called by Wait*(), which means that we really do need to instantiate a completion event. + + + + + Determines whether this is the root task of a self replicating group. + + + + + Determines whether the task is a replica itself. + + + + + The property formerly known as IsFaulted. + + + + + Gets whether the completed due to an unhandled exception. + + + If is true, the Task's will be equal to + TaskStatus.Faulted, and its + property will be non-null. + + + + + Checks whether the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag is set, + This will only be used by the implicit wait to prevent double throws + + + + + + Checks whether the body was ever invoked. Used by task scheduler code to verify custom schedulers actually ran the task. + + + + + A structure to hold continuation information. + + + + + Constructs a new continuation structure. + + The task to be activated. + The continuation options. + The scheduler to use for the continuation. + + + + Invokes the continuation for the target completion task. + + The completed task. + Whether the continuation can be inlined. + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The argument is null. + + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The to be assigned to this task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and state. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Creates a new future object. + + The parent task for this future. + A function that yields the future value. + The task scheduler which will be used to execute the future. + The CancellationToken for the task. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Creates a new future object. + + The parent task for this future. + An object containing data to be used by the action; may be null. + A function that yields the future value. + The CancellationToken for the task. + The task scheduler which will be used to execute the future. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Evaluates the value selector of the Task which is passed in as an object and stores the result. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new task. + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . This task's completion state will be transferred to the task returned + from the ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be passed as + an argument this completed task. + + The that will be assigned to the new task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . + This task's completion state will be transferred to the task returned from the + ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Gets the result value of this . + + + The get accessor for this property ensures that the asynchronous operation is complete before + returning. Once the result of the computation is available, it is stored and will be returned + immediately on later calls to . + + + + + Provides access to factory methods for creating instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on the factory type. + + + + + Provides support for creating and scheduling + Task{TResult} objects. + + The type of the results that are available though + the Task{TResult} objects that are associated with + the methods in this class. + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task{TResult}.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the default configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory{TResult}. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory{TResult}. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The that will be assigned to the new task. + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory{TResult}. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory{TResult}. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory{TResult}. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents the current stage in the lifecycle of a . + + + + + The task has been initialized but has not yet been scheduled. + + + + + The task is waiting to be activated and scheduled internally by the .NET Framework infrastructure. + + + + + The task has been scheduled for execution but has not yet begun executing. + + + + + The task is running but has not yet completed. + + + + + The task has finished executing and is implicitly waiting for + attached child tasks to complete. + + + + + The task completed execution successfully. + + + + + The task acknowledged cancellation by throwing an OperationCanceledException2 with its own CancellationToken + while the token was in signaled state, or the task's CancellationToken was already signaled before the + task started executing. + + + + + The task completed due to an unhandled exception. + + + + + Specifies flags that control optional behavior for the creation and execution of tasks. + + + + + Specifies that the default behavior should be used. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides a hint to the + TaskScheduler that oversubscription may be + warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Task creation flags which are only used internally. + + + + Specifies "No internal task options" + + + Used to filter out internal vs. public task creation options. + + + Specifies that the task will be queued by the runtime before handing it over to the user. + This flag will be used to skip the cancellationtoken registration step, which is only meant for unstarted tasks. + + + + Specifies flags that control optional behavior for the creation and execution of continuation tasks. + + + + + Default = "Continue on any, no task options, run asynchronously" + Specifies that the default behavior should be used. Continuations, by default, will + be scheduled when the antecedent task completes, regardless of the task's final TaskStatus. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides + a hint to the TaskScheduler that + oversubscription may be warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Specifies that the continuation task should not be scheduled if its antecedent ran to completion. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled + exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent was canceled. This + option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent ran to + completion. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent threw an + unhandled exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent was canceled. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be executed synchronously. With this option + specified, the continuation will be run on the same thread that causes the antecedent task to + transition into its final state. If the antecedent is already complete when the continuation is + created, the continuation will run on the thread creating the continuation. Only very + short-running continuations should be executed synchronously. + + + + + Represents an exception used to communicate task cancellation. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + Initializes a new instance of the class + with a reference to the that has been canceled. + + A task that has been canceled. + + + + Gets the task associated with this exception. + + + It is permissible for no Task to be associated with a + , in which case + this property will return null. + + + + + Represents the producer side of a unbound to a + delegate, providing access to the consumer side through the property. + + + + It is often the case that a is desired to + represent another asynchronous operation. + TaskCompletionSource is provided for this purpose. It enables + the creation of a task that can be handed out to consumers, and those consumers can use the members + of the task as they would any other. However, unlike most tasks, the state of a task created by a + TaskCompletionSource is controlled explicitly by the methods on TaskCompletionSource. This enables the + completion of the external asynchronous operation to be propagated to the underlying Task. The + separation also ensures that consumers are not able to transition the state without access to the + corresponding TaskCompletionSource. + + + All members of are thread-safe + and may be used from multiple threads concurrently. + + + The type of the result value assocatied with this . + + + + Creates a . + + + + + Creates a + with the specified options. + + + The created + by this instance and accessible through its property + will be instantiated using the specified . + + The options to use when creating the underlying + . + + The represent options invalid for use + with a . + + + + + Creates a + with the specified state. + + The state to use as the underlying + 's AsyncState. + + + + Creates a with + the specified state and options. + + The options to use when creating the underlying + . + The state to use as the underlying + 's AsyncState. + + The represent options invalid for use + with a . + + + + + Attempts to transition the underlying + into the + Faulted + state. + + The exception to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + The was disposed. + + + + Attempts to transition the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + There are one or more null elements in . + The collection is empty. + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The exception to bind to this . + The argument is null. + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + The argument is null. + There are one or more null elements in . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Canceled + state. + + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + Canceled + state. + + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Gets the created + by this . + + + This property enables a consumer access to the that is controlled by this instance. + The , , + , and + methods (and their "Try" variants) on this instance all result in the relevant state + transitions on this underlying Task. + + + + + An exception holder manages a list of exceptions for one particular task. + It offers the ability to aggregate, but more importantly, also offers intrinsic + support for propagating unhandled exceptions that are never observed. It does + this by aggregating and throwing if the holder is ever GC'd without the holder's + contents ever having been requested (e.g. by a Task.Wait, Task.get_Exception, etc). + + + + + Creates a new holder; it will be registered for finalization. + + The task this holder belongs to. + + + + A finalizer that repropagates unhandled exceptions. + + + + + Add an exception to the internal list. This will ensure the holder is + in the proper state (handled/unhandled) depending on the list's contents. + + An exception object (either an Exception or an + IEnumerable{Exception}) to add to the list. + + + + A private helper method that ensures the holder is considered + unhandled, i.e. it is registered for finalization. + + + + + A private helper method that ensures the holder is considered + handled, i.e. it is not registered for finalization. + + Whether this is called from the finalizer thread. + + + + Allocates a new aggregate exception and adds the contents of the list to + it. By calling this method, the holder assumes exceptions to have been + "observed", such that the finalization check will be subsequently skipped. + + Whether this is being called from a finalizer. + An extra exception to be included (optionally). + The aggregate exception to throw. + + + + Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of + instances. + + + + + Creates a proxy Task that represents the + asynchronous operation of a Task{Task}. + + + It is often useful to be able to return a Task from a + Task{TResult}, where the inner Task represents work done as part of the outer Task{TResult}. However, + doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior. Unwrap + solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}. + + The Task{Task} to unwrap. + The exception that is thrown if the + argument is null. + A Task that represents the asynchronous operation of the provided Task{Task}. + + + + Creates a proxy Task{TResult} that represents the + asynchronous operation of a Task{Task{TResult}}. + + + It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult} + represents work done as part of the outer Task{TResult}. However, doing so results in a Task{Task{TResult}}, + which, if not dealt with carefully, could produce unexpected behavior. Unwrap solves this problem by + creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}. + + The Task{Task{TResult}} to unwrap. + The exception that is thrown if the + argument is null. + A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}. /// Unwraps a Task that returns another Task. + + + + Provides support for creating and scheduling + Tasks. + + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new task. + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Check validity of options passed to FromAsync method + + The options to be validated. + determines type of FromAsync method that called this method + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents an abstract scheduler for tasks. + + + + TaskScheduler acts as the extension point for all + pluggable scheduling logic. This includes mechanisms such as how to schedule a task for execution, and + how scheduled tasks should be exposed to debuggers. + + + All members of the abstract type are thread-safe + and may be used from multiple threads concurrently. + + + + + + Queues a Task to the scheduler. + + + + A class derived from TaskScheduler + implements this method to accept tasks being scheduled on the scheduler. + A typical implementation would store the task in an internal data structure, which would + be serviced by threads that would execute those tasks at some time in the future. + + + This method is only meant to be called by the .NET Framework and + should not be called directly by the derived class. This is necessary + for maintaining the consistency of the system. + + + The Task to be queued. + The argument is null. + + + + Determines whether the provided Task + can be executed synchronously in this call, and if it can, executes it. + + + + A class derived from TaskScheduler implements this function to + support inline execution of a task on a thread that initiates a wait on that task object. Inline + execution is optional, and the request may be rejected by returning false. However, better + scalability typically results the more tasks that can be inlined, and in fact a scheduler that + inlines too little may be prone to deadlocks. A proper implementation should ensure that a + request executing under the policies guaranteed by the scheduler can successfully inline. For + example, if a scheduler uses a dedicated thread to execute tasks, any inlining requests from that + thread should succeed. + + + If a scheduler decides to perform the inline execution, it should do so by calling to the base + TaskScheduler's + TryExecuteTask method with the provided task object, propagating + the return value. It may also be appropriate for the scheduler to remove an inlined task from its + internal data structures if it decides to honor the inlining request. Note, however, that under + some circumstances a scheduler may be asked to inline a task that was not previously provided to + it with the method. + + + The derived scheduler is responsible for making sure that the calling thread is suitable for + executing the given task as far as its own scheduling and execution policies are concerned. + + + The Task to be + executed. + A Boolean denoting whether or not task has previously been + queued. If this parameter is True, then the task may have been previously queued (scheduled); if + False, then the task is known not to have been queued, and this call is being made in order to + execute the task inline without queueing it. + A Boolean value indicating whether the task was executed inline. + The argument is + null. + The was already + executed. + + + + Generates an enumerable of Task instances + currently queued to the scheduler waiting to be executed. + + + + A class derived from implements this method in order to support + integration with debuggers. This method will only be invoked by the .NET Framework when the + debugger requests access to the data. The enumerable returned will be traversed by debugging + utilities to access the tasks currently queued to this scheduler, enabling the debugger to + provide a representation of this information in the user interface. + + + It is important to note that, when this method is called, all other threads in the process will + be frozen. Therefore, it's important to avoid synchronization with other threads that may lead to + blocking. If synchronization is necessary, the method should prefer to throw a + than to block, which could cause a debugger to experience delays. Additionally, this method and + the enumerable returned must not modify any globally visible state. + + + The returned enumerable should never be null. If there are currently no queued tasks, an empty + enumerable should be returned instead. + + + For developers implementing a custom debugger, this method shouldn't be called directly, but + rather this functionality should be accessed through the internal wrapper method + GetScheduledTasksForDebugger: + internal Task[] GetScheduledTasksForDebugger(). This method returns an array of tasks, + rather than an enumerable. In order to retrieve a list of active schedulers, a debugger may use + another internal method: internal static TaskScheduler[] GetTaskSchedulersForDebugger(). + This static method returns an array of all active TaskScheduler instances. + GetScheduledTasksForDebugger then may be used on each of these scheduler instances to retrieve + the list of scheduled tasks for each. + + + An enumerable that allows traversal of tasks currently queued to this scheduler. + + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Retrieves some thread static state that can be cached and passed to multiple + TryRunInline calls, avoiding superflous TLS fetches. + + A bag of TLS state (or null if none exists). + + + + Attempts to execute the target task synchronously. + + The task to run. + True if the task may have been previously queued, + false if the task was absolutely not previously queued. + The state retrieved from GetThreadStatics + True if it ran, false otherwise. + + + + Attempts to dequeue a Task that was previously queued to + this scheduler. + + The Task to be dequeued. + A Boolean denoting whether the argument was successfully dequeued. + The argument is null. + + + + Notifies the scheduler that a work item has made progress. + + + + + Initializes the . + + + + + Frees all resources associated with this scheduler. + + + + + Creates a + associated with the current . + + + All Task instances queued to + the returned scheduler will be executed through a call to the + Post method + on that context. + + + A associated with + the current SynchronizationContext, as + determined by SynchronizationContext.Current. + + + The current SynchronizationContext may not be used as a TaskScheduler. + + + + + Attempts to execute the provided Task + on this scheduler. + + + + Scheduler implementations are provided with Task + instances to be executed through either the method or the + method. When the scheduler deems it appropriate to run the + provided task, should be used to do so. TryExecuteTask handles all + aspects of executing a task, including action invocation, exception handling, state management, + and lifecycle control. + + + must only be used for tasks provided to this scheduler by the .NET + Framework infrastructure. It should not be used to execute arbitrary tasks obtained through + custom mechanisms. + + + + A Task object to be executed. + + The is not associated with this scheduler. + + A Boolean that is true if was successfully executed, false if it + was not. A common reason for execution failure is that the task had previously been executed or + is in the process of being executed by another thread. + + + + Provides an array of all queued Task instances + for the debugger. + + + The returned array is populated through a call to . + Note that this function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of Task instances. + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Provides an array of all active TaskScheduler + instances for the debugger. + + + This function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of TaskScheduler instances. + + + + Registers a new TaskScheduler instance in the global collection of schedulers. + + + + + Removes a TaskScheduler instance from the global collection of schedulers. + + + + + Indicates the maximum concurrency level this + is able to support. + + + + + Indicates whether this is a custom scheduler, in which case the safe code paths will be taken upon task entry + using a CAS to transition from queued state to executing. + + + + + Gets the default TaskScheduler instance. + + + + + Gets the TaskScheduler + associated with the currently executing task. + + + When not called from within a task, will return the scheduler. + + + + + Gets the unique ID for this . + + + + + Occurs when a faulted 's unobserved exception is about to trigger exception escalation + policy, which, by default, would terminate the process. + + + This AppDomain-wide event provides a mechanism to prevent exception + escalation policy (which, by default, terminates the process) from triggering. + Each handler is passed a + instance, which may be used to examine the exception and to mark it as observed. + + + + + Nested class that provides debugger view for TaskScheduler + + + + Default thread pool scheduler. + + + + A TaskScheduler implementation that executes all tasks queued to it through a call to + on the + that its associated with. The default constructor for this class binds to the current + + + + + Constructs a SynchronizationContextTaskScheduler associated with + + This constructor expects to be set. + + + + Implemetation of for this scheduler class. + + Simply posts the tasks to be executed on the associated . + + + + + + Implementation of for this scheduler class. + + The task will be executed inline only if the call happens within + the associated . + + + + + + + Implementes the property for + this scheduler class. + + By default it returns 1, because a based + scheduler only supports execution on a single thread. + + + + + Provides data for the event that is raised when a faulted 's + exception goes unobserved. + + + The Exception property is used to examine the exception without marking it + as observed, whereas the method is used to mark the exception + as observed. Marking the exception as observed prevents it from triggering exception escalation policy + which, by default, terminates the process. + + + + + Initializes a new instance of the class + with the unobserved exception. + + The Exception that has gone unobserved. + + + + Marks the as "observed," thus preventing it + from triggering exception escalation policy which, by default, terminates the process. + + + + + Gets whether this exception has been marked as "observed." + + + + + The Exception that went unobserved. + + + + + Represents an exception used to communicate an invalid operation by a + . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class using the default error message and a reference to the inner exception that is the cause of + this exception. + + The exception that is the cause of the current exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4-windowsphone71/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Threading.Tasks.dll new file mode 100644 index 0000000..a089d47 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Threading.Tasks.xml new file mode 100644 index 0000000..5375fda --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl4/System.Threading.Tasks.xml @@ -0,0 +1,8969 @@ + + + + System.Threading.Tasks + + + + Represents one or more errors that occur during application execution. + + is used to consolidate multiple failures into a single, throwable + exception object. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with + a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a specified error + message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + The argument + is null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with + references to the inner exceptions that are the cause of this exception. + + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Initializes a new instance of the class with a specified error + message and references to the inner exceptions that are the cause of this exception. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Allocates a new aggregate exception with the specified message and list of inner exceptions. + + The error message that explains the reason for the exception. + The exceptions that are the cause of the current exception. + The argument + is null. + An element of is + null. + + + + Returns the that is the root cause of this exception. + + + + + Invokes a handler on each contained by this . + + The predicate to execute for each exception. The predicate accepts as an + argument the to be processed and returns a Boolean to indicate + whether the exception was handled. + + Each invocation of the returns true or false to indicate whether the + was handled. After all invocations, if any exceptions went + unhandled, all unhandled exceptions will be put into a new + which will be thrown. Otherwise, the method simply returns. If any + invocations of the throws an exception, it will halt the processing + of any more exceptions and immediately propagate the thrown exception as-is. + + An exception contained by this was not handled. + The argument is + null. + + + + Flattens an instances into a single, new instance. + + A new, flattened . + + If any inner exceptions are themselves instances of + , this method will recursively flatten all of them. The + inner exceptions returned in the new + will be the union of all of the the inner exceptions from exception tree rooted at the provided + instance. + + + + + Creates and returns a string representation of the current . + + A string representation of the current exception. + + + + Gets a read-only collection of the instances that caused the + current exception. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to One or more errors occurred.. + + + + + Looks up a localized string similar to An element of innerExceptions was null.. + + + + + Looks up a localized string similar to {0}{1}---> (Inner Exception #{2}) {3}{4}{5}. + + + + + Looks up a localized string similar to No tokens were supplied.. + + + + + Looks up a localized string similar to The CancellationTokenSource associated with this CancellationToken has been disposed.. + + + + + Looks up a localized string similar to The CancellationTokenSource has been disposed.. + + + + + Looks up a localized string similar to The SyncRoot property may not be used for the synchronization of concurrent collections.. + + + + + Looks up a localized string similar to The array is multidimensional, or the type parameter for the set cannot be cast automatically to the type of the destination array.. + + + + + Looks up a localized string similar to The index is equal to or greater than the length of the array, or the number of elements in the dictionary is greater than the available space from index to the end of the destination array.. + + + + + Looks up a localized string similar to The capacity argument must be greater than or equal to zero.. + + + + + Looks up a localized string similar to The concurrencyLevel argument must be positive.. + + + + + Looks up a localized string similar to The index argument is less than zero.. + + + + + Looks up a localized string similar to TKey is a reference type and item.Key is null.. + + + + + Looks up a localized string similar to The key already existed in the dictionary.. + + + + + Looks up a localized string similar to The source argument contains duplicate keys.. + + + + + Looks up a localized string similar to The key was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The value was of an incorrect type for this dictionary.. + + + + + Looks up a localized string similar to The lazily-initialized type does not have a public, parameterless constructor.. + + + + + Looks up a localized string similar to ValueFactory returned null.. + + + + + Looks up a localized string similar to The spinCount argument must be in the range 0 to {0}, inclusive.. + + + + + Looks up a localized string similar to There are too many threads currently waiting on the event. A maximum of {0} waiting threads are supported.. + + + + + Looks up a localized string similar to The event has been disposed.. + + + + + Looks up a localized string similar to The operation was canceled.. + + + + + Looks up a localized string similar to The condition argument is null.. + + + + + Looks up a localized string similar to The timeout must represent a value between -1 and Int32.MaxValue, inclusive.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions combined LongRunning and ExecuteSynchronously. Synchronous continuations should not be long running.. + + + + + Looks up a localized string similar to The specified TaskContinuationOptions excluded all continuation kinds.. + + + + + Looks up a localized string similar to (Internal)An attempt was made to create a LongRunning SelfReplicating task.. + + + + + Looks up a localized string similar to The value needs to translate in milliseconds to -1 (signifying an infinite timeout), 0 or a positive integer less than or equal to Int32.MaxValue.. + + + + + Looks up a localized string similar to The value needs to be either -1 (signifying an infinite timeout), 0 or a positive integer.. + + + + + Looks up a localized string similar to A task may only be disposed if it is in a completion state (RanToCompletion, Faulted or Canceled).. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.LongRunning in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.PreferFairness in calls to FromAsync.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating in calls to FromAsync.. + + + + + Looks up a localized string similar to FromAsync was called with a TaskManager that had already shut down.. + + + + + Looks up a localized string similar to The tasks argument contains no tasks.. + + + + + Looks up a localized string similar to It is invalid to exclude specific continuation kinds for continuations off of multiple tasks.. + + + + + Looks up a localized string similar to The tasks argument included a null value.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that was already started.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a continuation task.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task not bound to a delegate, such as the task returned from an asynchronous method.. + + + + + Looks up a localized string similar to RunSynchronously may not be called on a task that has already completed.. + + + + + Looks up a localized string similar to Start may not be called on a task that was already started.. + + + + + Looks up a localized string similar to Start may not be called on a continuation task.. + + + + + Looks up a localized string similar to Start may not be called on a task with null action.. + + + + + Looks up a localized string similar to Start may not be called on a promise-style task.. + + + + + Looks up a localized string similar to Start may not be called on a task that has completed.. + + + + + Looks up a localized string similar to The task has been disposed.. + + + + + Looks up a localized string similar to The tasks array included at least one null element.. + + + + + Looks up a localized string similar to The awaited task has not yet completed.. + + + + + Looks up a localized string similar to A task was canceled.. + + + + + Looks up a localized string similar to The exceptions collection was empty.. + + + + + Looks up a localized string similar to The exceptions collection included at least one null element.. + + + + + Looks up a localized string similar to A Task's exception(s) were not observed either by Waiting on the Task or accessing its Exception property. As a result, the unobserved exception was rethrown by the finalizer thread.. + + + + + Looks up a localized string similar to (Internal)Expected an Exception or an IEnumerable<Exception>. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was already executed.. + + + + + Looks up a localized string similar to ExecuteTask may not be called for a task which was previously queued to a different TaskScheduler.. + + + + + Looks up a localized string similar to The current SynchronizationContext may not be used as a TaskScheduler.. + + + + + Looks up a localized string similar to The TryExecuteTaskInline call to the underlying scheduler succeeded, but the task body was not invoked.. + + + + + Looks up a localized string similar to An exception was thrown by a TaskScheduler.. + + + + + Looks up a localized string similar to It is invalid to specify TaskCreationOptions.SelfReplicating for a Task<TResult>.. + + + + + Looks up a localized string similar to {Not yet computed}. + + + + + Looks up a localized string similar to A task's Exception may only be set directly if the task was created without a function.. + + + + + Looks up a localized string similar to An attempt was made to transition a task to a final state when it had already completed.. + + + + + Represents a thread-safe collection of keys and values. + + The type of the keys in the dictionary. + The type of the values in the dictionary. + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads. + + + + + Initializes a new instance of the + class that is empty, has the default concurrency level, has the default initial capacity, and + uses the default comparer for the key type. + + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the default + comparer for the key type. + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + is + less than 1. + is less than + 0. + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency + level, has the default initial capacity, and uses the default comparer for the key type. + + The whose elements are copied to + the new + . + is a null reference + (Nothing in Visual Basic). + contains one or more + duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level and capacity, and uses the specified + . + + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). + + + + Initializes a new instance of the + class that contains elements copied from the specified , has the default concurrency level, has the default + initial capacity, and uses the specified + . + + The whose elements are copied to + the new + . + The + implementation to use when comparing keys. + is a null reference + (Nothing in Visual Basic). -or- + is a null reference (Nothing in Visual Basic). + + + + + Initializes a new instance of the + class that contains elements copied from the specified , + has the specified concurrency level, has the specified initial capacity, and uses the specified + . + + The estimated number of threads that will update the + concurrently. + The whose elements are copied to the new + . + The implementation to use + when comparing keys. + + is a null reference (Nothing in Visual Basic). + -or- + is a null reference (Nothing in Visual Basic). + + + is less than 1. + + contains one or more duplicate keys. + + + + Initializes a new instance of the + class that is empty, has the specified concurrency level, has the specified initial capacity, and + uses the specified . + + The estimated number of threads that will update the + concurrently. + The initial number of elements that the + can contain. + The + implementation to use when comparing keys. + + is less than 1. -or- + is less than 0. + + is a null reference + (Nothing in Visual Basic). + + + + Attempts to add the specified key and value to the . + + The key of the element to add. + The value of the element to add. The value can be a null reference (Nothing + in Visual Basic) for reference types. + true if the key/value pair was added to the + successfully; otherwise, false. + is null reference + (Nothing in Visual Basic). + The + contains too many elements. + + + + Determines whether the contains the specified + key. + + The key to locate in the . + true if the contains an element with + the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Attempts to remove and return the the value with the specified key from the + . + + The key of the element to remove and return. + When this method returns, contains the object removed from the + or the default value of + if the operation failed. + true if an object was removed successfully; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Removes the specified key from the dictionary if it exists and returns its associated value. + If matchValue flag is set, the key will be removed only if is associated with a particular + value. + + The key to search for and remove if it exists. + The variable into which the removed value, if found, is stored. + Whether removal of the key is conditional on its value. + The conditional value to compare against if is true + + + + + Attempts to get the value associated with the specified key from the . + + The key of the value to get. + When this method returns, contains the object from + the + with the spedified key or the default value of + , if the operation failed. + true if the key was found in the ; + otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + + Compares the existing value for the specified key with a specified value, and if they’re equal, + updates the key with a third value. + + The key whose value is compared with and + possibly replaced. + The value that replaces the value of the element with if the comparison results in equality. + The value that is compared to the value of the element with + . + true if the value with was equal to and replaced with ; otherwise, + false. + is a null + reference. + + + + Removes all keys and values from the . + + + + + Copies the elements of the to an array of + type , starting at the + specified array index. + + The one-dimensional array of type + that is the destination of the elements copied from the . The array must have zero-based indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Copies the key and value pairs stored in the to a + new array. + + A new array containing a snapshot of key and value pairs copied from the . + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToPairs. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToEntries. + + + + + Copy dictionary contents to an array - shared implementation between ToArray and CopyTo. + + Important: the caller must hold all locks in m_locks before calling CopyToObjects. + + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Shared internal implementation for inserts and updates. + If key exists, we always return false; and if updateIfExists == true we force update with value; + If key doesn't exist, we always add value and return true; + + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + The function used to generate a value for the key + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value for the key as returned by valueFactory + if the key was not in the dictionary. + + + + Adds a key/value pair to the + if the key does not already exist. + + The key of the element to add. + the value to be added, if the key does not already exist + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The value for the key. This will be either the existing value for the key if the + key is already in the dictionary, or the new value if the key was not in the dictionary. + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The function used to generate a value for an absent key + The function used to generate a new value for an existing key + based on the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds a key/value pair to the if the key does not already + exist, or updates a key/value pair in the if the key + already exists. + + The key to be added or whose value should be updated + The value to be added for an absent key + The function used to generate a new value for an existing key based on + the key's existing value + is a null reference + (Nothing in Visual Basic). + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + The new value for the key. This will be either be the result of addValueFactory (if the key was + absent) or the result of updateValueFactory (if the key was present). + + + + Adds the specified key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + An element with the same key already exists in the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + true if the element is successfully remove; otherwise false. This method also returns + false if + was not found in the original . + + is a null reference + (Nothing in Visual Basic). + + + + Adds the specified value to the + with the specified key. + + The + structure representing the key and value to add to the . + The of is null. + The + contains too many elements. + An element with the same key already exists in the + + + + + Determines whether the + contains a specific key and value. + + The + structure to locate in the . + true if the is found in the ; otherwise, false. + + + + Removes a key and value from the dictionary. + + The + structure representing the key and value to remove from the . + true if the key and value represented by is successfully + found and removed; otherwise, false. + The Key property of is a null reference (Nothing in Visual Basic). + + + Returns an enumerator that iterates through the . + An enumerator for the . + + The enumerator returned from the dictionary is safe to use concurrently with + reads and writes to the dictionary, however it does not represent a moment-in-time snapshot + of the dictionary. The contents exposed through the enumerator may contain modifications + made to the dictionary after was called. + + + + + Adds the specified key and value to the dictionary. + + The object to use as the key. + The object to use as the value. + is a null reference + (Nothing in Visual Basic). + The dictionary contains too many + elements. + + is of a type that is not assignable to the key type of the . -or- + is of a type that is not assignable to , + the type of values in the . + -or- A value with the same key already exists in the . + + + + + Gets whether the contains an + element with the specified key. + + The key to locate in the . + true if the contains + an element with the specified key; otherwise, false. + is a null reference + (Nothing in Visual Basic). + + + Provides an for the + . + An for the . + + + + Removes the element with the specified key from the . + + The key of the element to remove. + is a null reference + (Nothing in Visual Basic). + + + + Copies the elements of the to an array, starting + at the specified array index. + + The one-dimensional array that is the destination of the elements copied from + the . The array must have zero-based + indexing. + The zero-based index in at which copying + begins. + is a null reference + (Nothing in Visual Basic). + is less than + 0. + is equal to or greater than + the length of the . -or- The number of elements in the source + is greater than the available space from to the end of the destination + . + + + + Replaces the internal table with a larger one. To prevent multiple threads from resizing the + table as a result of races, the table of buckets that was deemed too small is passed in as + an argument to GrowTable(). GrowTable() obtains a lock, and then checks whether the bucket + table has been replaced in the meantime or not. + + Reference to the bucket table that was deemed too small. + + + + Computes the bucket and lock number for a particular key. + + + + + Acquires all locks for this hash table, and increments locksAcquired by the number + of locks that were successfully acquired. The locks are acquired in an increasing + order. + + + + + Acquires a contiguous range of locks for this hash table, and increments locksAcquired + by the number of locks that were successfully acquired. The locks are acquired in an + increasing order. + + + + + Releases a contiguous range of locks. + + + + + Gets a collection containing the keys in the dictionary. + + + + + Gets a collection containing the values in the dictionary. + + + + + A helper method for asserts. + + + + + Get the data array to be serialized + + + + + Construct the dictionary from a previously seiralized one + + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key. If the specified key is not found, a get + operation throws a + , and a set operation creates a new + element with the specified key. + is a null reference + (Nothing in Visual Basic). + The property is retrieved and + + does not exist in the collection. + + + + Gets the number of key/value pairs contained in the . + + The dictionary contains too many + elements. + The number of key/value paris contained in the . + Count has snapshot semantics and represents the number of items in the + at the moment when Count was accessed. + + + + Gets a value that indicates whether the is empty. + + true if the is empty; otherwise, + false. + + + + Gets a collection containing the keys in the . + + An containing the keys in the + . + + + + Gets a collection containing the values in the . + + An containing the values in + the + . + + + + Gets a value indicating whether the dictionary is read-only. + + true if the is + read-only; otherwise, false. For , this property always returns + false. + + + + Gets a value indicating whether the has a fixed size. + + true if the has a + fixed size; otherwise, false. For , this property always + returns false. + + + + Gets a value indicating whether the is read-only. + + true if the is + read-only; otherwise, false. For , this property always + returns false. + + + + Gets an containing the keys of the . + + An containing the keys of the . + + + + Gets an containing the values in the . + + An containing the values in the . + + + + Gets or sets the value associated with the specified key. + + The key of the value to get or set. + The value associated with the specified key, or a null reference (Nothing in Visual Basic) + if is not in the dictionary or is of a type that is + not assignable to the key type of the . + is a null reference + (Nothing in Visual Basic). + + A value is being assigned, and is of a type that is not assignable to the + key type of the . -or- A value is being + assigned, and is of a type that is not assignable to the value type + of the + + + + + Gets a value indicating whether access to the is + synchronized with the SyncRoot. + + true if access to the is synchronized + (thread safe); otherwise, false. For , this property always + returns false. + + + + Gets an object that can be used to synchronize access to the . This property is not supported. + + The SyncRoot property is not supported. + + + + The number of concurrent writes for which to optimize by default. + + + + + A node in a singly-linked list representing a particular hash table bucket. + + + + + A private class to represent enumeration over the dictionary that implements the + IDictionaryEnumerator interface. + + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + + An interface similar to the one added in .NET 4.0. + + + + The exception that is thrown in a thread upon cancellation of an operation that the thread was executing. + + + Initializes the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + Initializes the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + A cancellation token associated with the operation that was canceled. + + + Initializes the exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + A cancellation token associated with the operation that was canceled. + + + Gets a token associated with the operation that was canceled. + + + + A dummy replacement for the .NET internal class StackCrawlMark. + + + + + Propogates notification that operations should be canceled. + + + + A may be created directly in an unchangeable canceled or non-canceled state + using the CancellationToken's constructors. However, to have a CancellationToken that can change + from a non-canceled to a canceled state, + CancellationTokenSource must be used. + CancellationTokenSource exposes the associated CancellationToken that may be canceled by the source through its + Token property. + + + Once canceled, a token may not transition to a non-canceled state, and a token whose + is false will never change to one that can be canceled. + + + All members of this struct are thread-safe and may be used concurrently from multiple threads. + + + + + + Internal constructor only a CancellationTokenSource should create a CancellationToken + + + + + Initializes the CancellationToken. + + + The canceled state for the token. + + + Tokens created with this constructor will remain in the canceled state specified + by the parameter. If is false, + both and will be false. + If is true, + both and will be true. + + + + + Registers a delegate that will be called when this CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Registers a delegate that will be called when this + CancellationToken is canceled. + + + + If this token is already in the canceled state, the + delegate will be run immediately and synchronously. Any exception the delegate generates will be + propogated out of this method call. + + + The delegate to be executed when the CancellationToken is canceled. + The state to pass to the when the delegate is invoked. This may be null. + A Boolean value that indicates whether to capture + the current SynchronizationContext and use it + when invoking the . + The instance that can + be used to deregister the callback. + is null. + The associated CancellationTokenSource has been disposed. + + + + Determines whether the current CancellationToken instance is equal to the + specified token. + + The other CancellationToken to which to compare this + instance. + True if the instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other object to which to compare this instance. + True if is a CancellationToken + and if the two instances are equal; otherwise, false. Two tokens are equal if they are associated + with the same CancellationTokenSource or if they were both constructed + from public CancellationToken constructors and their values are equal. + An associated CancellationTokenSource has been disposed. + + + + Serves as a hash function for a CancellationToken. + + A hash code for the current CancellationToken instance. + + + + Determines whether two CancellationToken instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Determines whether two CancellationToken instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + An associated CancellationTokenSource has been disposed. + + + + Throws a OperationCanceledException if + this token has had cancellation requested. + + + This method provides functionality equivalent to: + + if (token.IsCancellationRequested) + throw new OperationCanceledException(token); + + + The token has had cancellation requested. + The associated CancellationTokenSource has been disposed. + + + + Returns an empty CancellationToken value. + + + The value returned by this property will be non-cancelable by default. + + + + + Gets whether cancellation has been requested for this token. + + Whether cancellation has been requested for this token. + + + This property indicates whether cancellation has been requested for this token, + either through the token initially being construted in a canceled state, or through + calling Cancel + on the token's associated . + + + If this property is true, it only guarantees that cancellation has been requested. + It does not guarantee that every registered handler + has finished executing, nor that cancellation requests have finished propagating + to all registered handlers. Additional synchronization may be required, + particularly in situations where related objects are being canceled concurrently. + + + + + + Gets whether this token is capable of being in the canceled state. + + + If CanBeCanceled returns false, it is guaranteed that the token will never transition + into a canceled state, meaning that will never + return true. + + + + + Gets a that is signaled when the token is canceled. + + Accessing this property causes a WaitHandle + to be instantiated. It is preferable to only use this property when necessary, and to then + dispose the associated instance at the earliest opportunity (disposing + the source will dispose of this allocated handle). The handle should not be closed or disposed directly. + + The associated CancellationTokenSource has been disposed. + + + + Represents a callback delegate that has been registered with a CancellationToken. + + + To unregister a callback, dispose the corresponding Registration instance. + + + + + Attempts to deregister the item. If it's already being run, this may fail. + Entails a full memory fence. + + True if the callback was found and deregistered, false otherwise. + + + + Disposes of the registration and unregisters the target callback from the associated + CancellationToken. + If the target callback is currently executing this method will wait until it completes, except + in the degenerate cases where a callback method deregisters itself. + + + + + Determines whether two CancellationTokenRegistration + instances are equal. + + The first instance. + The second instance. + True if the instances are equal; otherwise, false. + + + + Determines whether two CancellationTokenRegistration instances are not equal. + + The first instance. + The second instance. + True if the instances are not equal; otherwise, false. + + + + Determines whether the current CancellationTokenRegistration instance is equal to the + specified . + + The other object to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Determines whether the current CancellationToken instance is equal to the + specified . + + The other CancellationTokenRegistration to which to compare this instance. + True, if both this and are equal. False, otherwise. + Two CancellationTokenRegistration instances are equal if + they both refer to the output of a single call to the same Register method of a + CancellationToken. + + + + + Serves as a hash function for a CancellationTokenRegistration.. + + A hash code for the current CancellationTokenRegistration instance. + + + + Signals to a that it should be canceled. + + + + is used to instantiate a + (via the source's Token property) + that can be handed to operations that wish to be notified of cancellation or that can be used to + register asynchronous operations for cancellation. That token may have cancellation requested by + calling to the source's Cancel + method. + + + All members of this class, except Dispose, are thread-safe and may be used + concurrently from multiple threads. + + + + + The ID of the thread currently executing the main body of CTS.Cancel() + this helps us to know if a call to ctr.Dispose() is running 'within' a cancellation callback. + This is updated as we move between the main thread calling cts.Cancel() and any syncContexts that are used to + actually run the callbacks. + + + + Initializes the . + + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + However, this overload of Cancel will aggregate any exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Communicates a request for cancellation. + + + + The associated will be + notified of the cancellation and will transition to a state where + IsCancellationRequested returns true. + Any callbacks or cancelable operations + registered with the will be executed. + + + Cancelable operations and callbacks registered with the token should not throw exceptions. + If is true, an exception will immediately propagate out of the + call to Cancel, preventing the remaining callbacks and cancelable operations from being processed. + If is false, this overload will aggregate any + exceptions thrown into a , + such that one callback throwing an exception will not prevent other registered callbacks from being executed. + + + The that was captured when each callback was registered + will be reestablished when the callback is invoked. + + + Specifies whether exceptions should immediately propagate. + An aggregate exception containing all the exceptions thrown + by the registered callbacks on the associated . + This has been disposed. + + + + Releases the resources used by this . + + + This method is not thread-safe for any other concurrent calls. + + + + + Throws an exception if the source has been disposed. + + + + + InternalGetStaticSource() + + Whether the source should be set. + A static source to be shared among multiple tokens. + + + + Registers a callback object. If cancellation has already occurred, the + callback will have been run by the time this method returns. + + + + + + + + + + Invoke the Canceled event. + + + The handlers are invoked synchronously in LIFO order. + + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The first CancellationToken to observe. + The second CancellationToken to observe. + A CancellationTokenSource that is linked + to the source tokens. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Creates a CancellationTokenSource that will be in the canceled state + when any of the source tokens are in the canceled state. + + The CancellationToken instances to observe. + A CancellationTokenSource that is linked + to the source tokens. + is null. + A CancellationTokenSource associated with + one of the source tokens has been disposed. + + + + Gets whether cancellation has been requested for this CancellationTokenSource. + + Whether cancellation has been requested for this CancellationTokenSource. + + + This property indicates whether cancellation has been requested for this token source, such as + due to a call to its + Cancel method. + + + If this property returns true, it only guarantees that cancellation has been requested. It does not + guarantee that every handler registered with the corresponding token has finished executing, nor + that cancellation requests have finished propagating to all registered handlers. Additional + synchronization may be required, particularly in situations where related objects are being + canceled concurrently. + + + + + + A simple helper to determine whether cancellation has finished. + + + + + A simple helper to determine whether disposal has occured. + + + + + The ID of the thread that is running callbacks. + + + + + Gets the CancellationToken + associated with this . + + The CancellationToken + associated with this . + The token source has been + disposed. + + + + + + + + + + + + + + The currently executing callback + + + + + A helper class for collating the various bits of information required to execute + cancellation callbacks. + + + + + InternalExecuteCallbackSynchronously_GeneralPath + This will be called on the target synchronization context, however, we still need to restore the required execution context + + + + + A sparsely populated array. Elements can be sparse and some null, but this allows for + lock-free additions and growth, and also for constant time removal (by nulling out). + + The kind of elements contained within. + + + + Allocates a new array with the given initial size. + + How many array slots to pre-allocate. + + + + Adds an element in the first available slot, beginning the search from the tail-to-head. + If no slots are available, the array is grown. The method doesn't return until successful. + + The element to add. + Information about where the add happened, to enable O(1) deregistration. + + + + The tail of the doubly linked list. + + + + + A struct to hold a link to the exact spot in an array an element was inserted, enabling + constant time removal later on. + + + + + A fragment of a sparsely populated array, doubly linked. + + The kind of elements contained within. + + + + Provides lazy initialization routines. + + + These routines avoid needing to allocate a dedicated, lazy-initialization instance, instead using + references to ensure targets have been initialized as they are accessed. + + + + + Initializes a target reference type with the type's default constructor if the target has not + already been initialized. + + The refence type of the reference to be initialized. + A reference of type to initialize if it has not + already been initialized. + The initialized reference of type . + Type does not have a default + constructor. + + Permissions to access the constructor of type were missing. + + + + This method may only be used on reference types. To ensure initialization of value + types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initializes a target reference type using the specified function if it has not already been + initialized. + + The reference type of the reference to be initialized. + The reference of type to initialize if it has not + already been initialized. + The invoked to initialize the + reference. + The initialized reference of type . + Type does not have a + default constructor. + returned + null. + + + This method may only be used on reference types, and may + not return a null reference (Nothing in Visual Basic). To ensure initialization of value types or + to allow null reference types, see other overloads of EnsureInitialized. + + + This method may be used concurrently by multiple threads to initialize . + In the event that multiple threads access this method concurrently, multiple instances of + may be created, but only one will be stored into . In such an occurrence, this method will not dispose of the + objects that were not stored. If such objects must be disposed, it is up to the caller to determine + if an object was not used and to then dispose of the object appropriately. + + + + + + Initialize the target using the given delegate (slow path). + + The reference type of the reference to be initialized. + The variable that need to be initialized + The delegate that will be executed to initialize the target + The initialized variable + + + + Initializes a target reference or value type with its default constructor if it has not already + been initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The initialized value of type . + + + + Initializes a target reference or value type with a specified function if it has not already been + initialized. + + The type of the reference to be initialized. + A reference or value of type to initialize if it + has not already been initialized. + A reference to a boolean that determines whether the target has already + been initialized. + A reference to an object used as the mutually exclusive lock for initializing + . + The invoked to initialize the + reference or value. + The initialized value of type . + + + + Ensure the target is initialized and return the value (slow path). This overload permits nulls + and also works for value type targets. Uses the supplied function to create the value. + + The type of target. + A reference to the target to be initialized. + A reference to a location tracking whether the target has been initialized. + A reference to a location containing a mutual exclusive lock. + + The to invoke in order to produce the lazily-initialized value. + + The initialized object. + + + + Provides a slimmed down version of . + + + All public and protected members of are thread-safe and may be used + concurrently from multiple threads, with the exception of Dispose, which + must only be used when all other operations on the have + completed, and Reset, which should only be used when no other threads are + accessing the event. + + + + + Initializes a new instance of the + class with an initial state of nonsignaled. + + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled. + + true to set the initial state signaled; false to set the initial state + to nonsignaled. + + + + Initializes a new instance of the + class with a Boolen value indicating whether to set the intial state to signaled and a specified + spin count. + + true to set the initial state to signaled; false to set the initial state + to nonsignaled. + The number of spin waits that will occur before falling back to a true + wait. + is less than + 0 or greater than the maximum allowed value. + + + + Initializes the internal state of the event. + + Whether the event is set initially or not. + The spin count that decides when the event will block. + + + + Helper to ensure the lock object is created before first use. + + + + + This method lazily initializes the event object. It uses CAS to guarantee that + many threads racing to call this at once don't result in more than one event + being stored and used. The event will be signaled or unsignaled depending on + the state of the thin-event itself, with synchronization taken into account. + + True if a new event was created and stored, false otherwise. + + + + Sets the state of the event to signaled, which allows one or more threads waiting on the event to + proceed. + + + + + Private helper to actually perform the Set. + + Indicates whether we are calling Set() during cancellation. + The object has been canceled. + + + + Sets the state of the event to nonsignaled, which causes threads to block. + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Blocks the current thread until the current is set. + + + The maximum number of waiters has been exceeded. + + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current receives a signal, + while observing a . + + The to + observe. + + The maximum number of waiters has been exceeded. + + was + canceled. + + The caller of this method blocks indefinitely until the current instance is set. The caller will + return immediately if the event is currently in a set state. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval. + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + to measure the time interval, while observing a . + + A that represents the number of milliseconds + to wait, or a that represents -1 milliseconds to wait indefinitely. + + The to + observe. + true if the was set; otherwise, + false. + is a negative + number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater + than . + was canceled. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval. + + The number of milliseconds to wait, or (-1) to wait indefinitely. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + + + + Blocks the current thread until the current is set, using a + 32-bit signed integer to measure the time interval, while observing a . + + The number of milliseconds to wait, or (-1) to wait indefinitely. + The to + observe. + true if the was set; otherwise, + false. + is a + negative number other than -1, which represents an infinite time-out. + + The maximum number of waiters has been exceeded. + + was canceled. + + + + Releases all resources used by the current instance of . + + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + When overridden in a derived class, releases the unmanaged resources used by the + , and optionally releases the managed resources. + + true to release both managed and unmanaged resources; + false to release only unmanaged resources. + + Unlike most of the members of , is not + thread-safe and may not be used concurrently with other members of this instance. + + + + + Throw ObjectDisposedException if the MRES is disposed + + + + + Private helper method to wake up waiters when a cancellationToken gets canceled. + + + + + Private helper method for updating parts of a bit-string state value. + Mainly called from the IsSet and Waiters properties setters + + + Note: the parameter types must be int as CompareExchange cannot take a Uint + + The new value + The mask used to set the bits + + + + Private helper method - performs Mask and shift, particular helpful to extract a field from a packed word. + eg ExtractStatePortionAndShiftRight(0x12345678, 0xFF000000, 24) => 0x12, ie extracting the top 8-bits as a simple integer + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + + + Performs a Mask operation, but does not perform the shift. + This is acceptable for boolean values for which the shift is unnecessary + eg (val & Mask) != 0 is an appropriate way to extract a boolean rather than using + ((val & Mask) >> shiftAmount) == 1 + + ?? is there a common place to put this rather than being private to MRES? + + + + + + + Helper function to measure and update the wait time + + The first time (in Ticks) observed when the wait started. + The orginal wait timeoutout in milliseconds. + The new wait time in milliseconds, -1 if the time expired, -2 if overflow in counters + has occurred. + + + + Gets the underlying object for this . + + The underlying event object fore this . + + Accessing this property forces initialization of an underlying event object if one hasn't + already been created. To simply wait on this , + the public Wait methods should be preferred. + + + + + Gets whether the event is set. + + true if the event has is set; otherwise, false. + + + + Gets the number of spin waits that will be occur before falling back to a true wait. + + + + + How many threads are waiting. + + + + + Provides support for spin-based waiting. + + + + encapsulates common spinning logic. On single-processor machines, yields are + always used instead of busy waits, and on computers with Intel™ processors employing Hyper-Threading™ + technology, it helps to prevent hardware thread starvation. SpinWait encapsulates a good mixture of + spinning and true yielding. + + + is a value type, which means that low-level code can utilize SpinWait without + fear of unnecessary allocation overheads. SpinWait is not generally useful for ordinary applications. + In most cases, you should use the synchronization classes provided by the .NET Framework, such as + . For most purposes where spin waiting is required, however, + the type should be preferred over the System.Threading.Thread.SpinWait method. + + + While SpinWait is designed to be used in concurrent applications, it is not designed to be + used from multiple threads concurrently. SpinWait's members are not thread-safe. If multiple + threads must spin, each should use its own instance of SpinWait. + + + + + + Performs a single spin. + + + This is typically called in a loop, and may change in behavior based on the number of times a + has been called thus far on this instance. + + + + + Resets the spin counter. + + + This makes and behave as though no calls + to had been issued on this instance. If a instance + is reused many times, it may be useful to reset it to avoid yielding too soon. + + + + + Spins until the specified condition is satisfied. + + A delegate to be executed over and over until it returns true. + The argument is null. + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + + A that represents the number of milliseconds to wait, + or a TimeSpan that represents -1 milliseconds to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a negative number + other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than + . + + + + Spins until the specified condition is satisfied or until the specified timeout is expired. + + A delegate to be executed over and over until it returns true. + The number of milliseconds to wait, or (-1) to wait indefinitely. + True if the condition is satisfied within the timeout; otherwise, false + The argument is null. + is a + negative number other than -1, which represents an infinite time-out. + + + + Gets the number of times has been called on this instance. + + + + + Gets whether the next call to will yield the processor, triggering a + forced context switch. + + Whether the next call to will yield the processor, triggering a + forced context switch. + + On a single-CPU machine, always yields the processor. On machines with + multiple CPUs, may yield after an unspecified number of calls. + + + + + A helper class to get the number of preocessors, it updates the numbers of processors every sampling interval + + + + + Gets the number of available processors + + + + + Gets whether the current machine has only a single processor. + + + + + Represents an asynchronous operation that produces a result at some time in the future. + + + The type of the result produced by this . + + + + instances may be created in a variety of ways. The most common approach is by + using the task's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs a function, the factory's StartNew + method may be used: + + // C# + var t = Task<int>.Factory.StartNew(() => GenerateResult()); + - or - + var t = Task.Factory.StartNew(() => GenerateResult()); + + ' Visual Basic + Dim t = Task<int>.Factory.StartNew(Function() GenerateResult()) + - or - + Dim t = Task.Factory.StartNew(Function() GenerateResult()) + + + + The class also provides constructors that initialize the task but that do not + schedule it for execution. For performance reasons, the StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + Start + method may then be used to schedule the task for execution at a later time. + + + All members of , except for + Dispose, are thread-safe + and may be used from multiple threads concurrently. + + + + + + Represents an asynchronous operation. + + + + instances may be created in a variety of ways. The most common approach is by + using the Task type's property to retrieve a instance that can be used to create tasks for several + purposes. For example, to create a that runs an action, the factory's StartNew + method may be used: + + // C# + var t = Task.Factory.StartNew(() => DoAction()); + + ' Visual Basic + Dim t = Task.Factory.StartNew(Function() DoAction()) + + + + The class also provides constructors that initialize the Task but that do not + schedule it for execution. For performance reasons, TaskFactory's StartNew method should be the + preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation + and scheduling must be separated, the constructors may be used, and the task's + method may then be used to schedule the task for execution at a later time. + + + All members of , except for , are thread-safe + and may be used from multiple threads concurrently. + + + For operations that return values, the class + should be used. + + + For developers implementing custom debuggers, several internal and private members of Task may be + useful (these may change from release to release). The Int32 m_taskId field serves as the backing + store for the property, however accessing this field directly from a debugger may be + more efficient than accessing the same value through the property's getter method (the + s_taskIdCounter Int32 counter is used to retrieve the next available ID for a Task). Similarly, the + Int32 m_stateFlags field stores information about the current lifecycle stage of the Task, + information also accessible through the property. The m_action System.Object + field stores a reference to the Task's delegate, and the m_stateObject System.Object field stores the + async state passed to the Task by the developer. Finally, for debuggers that parse stack frames, the + InternalWait method serves a potential marker for when a Task is entering a wait operation. + + + + + + A type initializer that runs with the appropriate permissions. + + + + + Initializes a new with the specified action. + + The delegate that represents the code to execute in the Task. + The argument is null. + + + + Initializes a new with the specified action and CancellationToken. + + The delegate that represents the code to execute in the Task. + The CancellationToken + that will be assigned to the new Task. + The argument is null. + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action and creation options. + + The delegate that represents the code to execute in the task. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action and state. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, snd options. + + The delegate that represents the code to execute in the task. + An object representing data to be used by the action. + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the Task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + An internal constructor used by the factory methods on task and its descendent(s). + This variant does not capture the ExecutionContext; it is up to the caller to do that. + + An action to execute. + Optional state to pass to the action. + Parent of Task. + A CancellationToken for the task. + A task scheduler under which the task will run. + Options to control its execution. + Internal options to control its execution + + + + Common logic used by the following internal ctors: + Task() + Task(object action, object state, Task parent, TaskCreationOptions options, TaskScheduler taskScheduler) + + ASSUMES THAT m_creatingTask IS ALREADY SET. + + + Action for task to execute. + Object to which to pass to action (may be null) + Task scheduler on which to run thread (only used by continuation tasks). + A CancellationToken for the Task. + Options to customize behavior of Task. + Internal options to customize behavior of Task. + + + + Checks if we registered a CT callback during construction, and deregisters it. + This should be called when we know the registration isn't useful anymore. Specifically from Finish() if the task has completed + successfully or with an exception. + + + + + Captures the ExecutionContext so long as flow isn't suppressed. + + A stack crawl mark pointing to the frame of the caller. + + + + Internal function that will be called by a new child task to add itself to + the children list of the parent (this). + + Since a child task can only be created from the thread executing the action delegate + of this task, reentrancy is neither required nor supported. This should not be called from + anywhere other than the task construction/initialization codepaths. + + + + + Starts the , scheduling it for execution to the current TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time + will result in an exception. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Starts the , scheduling it for execution to the specified TaskScheduler. + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + The TaskScheduler with which to associate + and execute this task. + + + The argument is null. + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the current TaskScheduler. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + Tasks executed with will be associated with the current TaskScheduler. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + + + + Runs the synchronously on the scheduler provided. + + + + A task may only be started and run only once. Any attempts to schedule a task a second time will + result in an exception. + + + If the target scheduler does not support running this Task on the current thread, the Task will + be scheduled for execution on the scheduler, and the current thread will block until the + Task has completed execution. + + + + The is not in a valid state to be started. It may have already been started, + executed, or canceled, or it may have been created in a manner that doesn't support direct + scheduling. + + + The instance has been disposed. + + The parameter + is null. + The scheduler on which to attempt to run this task inline. + + + + Throws an exception if the task has been disposed, and hence can no longer be accessed. + + The task has been disposed. + + + + Sets the internal completion event. + + + + + Disposes the , releasing all of its unmanaged resources. + + + Unlike most of the members of , this method is not thread-safe. + Also, may only be called on a that is in one of + the final states: RanToCompletion, + Faulted, or + Canceled. + + + The exception that is thrown if the is not in + one of the final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Disposes the , releasing all of its unmanaged resources. + + + A Boolean value that indicates whether this method is being called due to a call to . + + + Unlike most of the members of , this method is not thread-safe. + + + + + Schedules the task for execution. + + If true, TASK_STATE_STARTED bit is turned on in + an atomic fashion, making sure that TASK_STATE_CANCELED does not get set + underneath us. If false, TASK_STATE_STARTED bit is OR-ed right in. This + allows us to streamline things a bit for StartNew(), where competing cancellations + are not a problem. + + + + Adds an exception to the list of exceptions this task has thrown. + + An object representing either an Exception or a collection of Exceptions. + + + + Returns a list of exceptions by aggregating the holder's contents. Or null if + no exceptions have been thrown. + + Whether to include a TCE if cancelled. + An aggregate exception, or null if no exceptions have been caught. + + + + Throws an aggregate exception if the task contains exceptions. + + + + + Checks whether this is an attached task, and whether we are being called by the parent task. + And sets the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag based on that. + + This is meant to be used internally when throwing an exception, and when WaitAll is gathering + exceptions for tasks it waited on. If this flag gets set, the implicit wait on children + will skip exceptions to prevent duplication. + + This should only be called when this task has completed with an exception + + + + + + Signals completion of this particular task. + + The bUserDelegateExecuted parameter indicates whether this Finish() call comes following the + full execution of the user delegate. + + If bUserDelegateExecuted is false, it mean user delegate wasn't invoked at all (either due to + a cancellation request, or because this task is a promise style Task). In this case, the steps + involving child tasks (i.e. WaitForChildren) will be skipped. + + + + + + FinishStageTwo is to be executed as soon as we known there are no more children to complete. + It can happen i) either on the thread that originally executed this task (if no children were spawned, or they all completed by the time this task's delegate quit) + ii) or on the thread that executed the last child. + + + + + Final stage of the task completion code path. Notifies the parent (if any) that another of its childre are done, and runs continuations. + This function is only separated out from FinishStageTwo because these two operations are also needed to be called from CancellationCleanupLogic() + + + + + This is called by children of this task when they are completed. + + + + + This is to be called just before the task does its final state transition. + It traverses the list of exceptional children, and appends their aggregate exceptions into this one's exception list + + + + + Special purpose Finish() entry point to be used when the task delegate throws a ThreadAbortedException + This makes a note in the state flags so that we avoid any costly synchronous operations in the finish codepath + such as inlined continuations + + + Indicates whether the ThreadAbortException was added to this task's exception holder. + This should always be true except for the case of non-root self replicating task copies. + + Whether the delegate was executed. + + + + Executes the task. This method will only be called once, and handles bookeeping associated with + self-replicating tasks, in addition to performing necessary exception marshaling. + + The task has already been disposed. + + + + IThreadPoolWorkItem override, which is the entry function for this task when the TP scheduler decides to run it. + + + + + + Outermost entry function to execute this task. Handles all aspects of executing a task on the caller thread. + Currently this is called by IThreadPoolWorkItem.ExecuteWorkItem(), and TaskManager.TryExecuteInline. + + + Performs atomic updates to prevent double execution. Should only be set to true + in codepaths servicing user provided TaskSchedulers. The ConcRT or ThreadPool schedulers don't need this. + + + + The actual code which invokes the body of the task. This can be overriden in derived types. + + + + + Alternate InnerInvoke prototype to be called from ExecuteSelfReplicating() so that + the Parallel Debugger can discover the actual task being invoked. + Details: Here, InnerInvoke is actually being called on the rootTask object while we are actually executing the + childTask. And the debugger needs to discover the childTask, so we pass that down as an argument. + The NoOptimization and NoInlining flags ensure that the childTask pointer is retained, and that this + function appears on the callstack. + + + + + + Performs whatever handling is necessary for an unhandled exception. Normally + this just entails adding the exception to the holder object. + + The exception that went unhandled. + + + + Waits for the to complete execution. + + + The was canceled -or- an exception was thrown during + the execution of the . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for the to complete execution. + + + A to observe while waiting for the task to complete. + + + The was canceled. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + true if the completed execution within the allotted time; otherwise, + false. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + + + Waits for the to complete execution. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the task to complete. + + + true if the completed execution within the allotted time; otherwise, false. + + + The was canceled -or- an exception was thrown during the execution of the . + + + The + has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + The core wait function, which is only accesible internally. It's meant to be used in places in TPL code where + the current context is known or cached. + + + + + Cancels the . + + Indiactes whether we should only cancel non-invoked tasks. + For the default scheduler this option will only be serviced through TryDequeue. + For custom schedulers we also attempt an atomic state transition. + true if the task was successfully canceled; otherwise, false. + The + has been disposed. + + + + Sets the task's cancellation acknowledged flag. + + + + + Runs all of the continuations, as appropriate. + + + + + Helper function to determine whether the current task is in the state desired by the + continuation kind under evaluation. Three possibilities exist: the task failed with + an unhandled exception (OnFailed), the task was canceled before running (OnAborted), + or the task completed successfully (OnCompletedSuccessfully). Note that the last + one includes completing due to cancellation. + + The continuation options under evaluation. + True if the continuation should be run given the task's current state. + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + The that will be assigned to the new continuation task. + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Converts TaskContinuationOptions to TaskCreationOptions, and also does + some validity checking along the way. + + Incoming TaskContinuationOptions + Outgoing TaskCreationOptions + Outgoing InternalTaskOptions + + + + Registers the continuation and possibly runs it (if the task is already finished). + + The continuation task itself. + TaskScheduler with which to associate continuation task. + Restrictions on when the continuation becomes active. + + + + Waits for all of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + An array of instances on which to wait. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The was canceled. + + + The has been disposed. + + + + + Waits for all of the provided objects to complete execution. + + + true if all of the instances completed execution within the allotted time; + otherwise, false. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for the tasks to complete. + + + The argument is null. + + + The argument contains a null element. + + + At least one of the instances was canceled -or- an exception was thrown during + the execution of at least one of the instances. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Waits for a set of handles in a STA-aware way. In other words, it will wait for each + of the events individually if we're on a STA thread, because MsgWaitForMultipleObjectsEx + can't do a true wait-all due to its hidden message queue event. This is not atomic, + of course, but we only wait on one-way (MRE) events anyway so this is OK. + + An array of wait handles to wait on. + The timeout to use during waits. + The cancellationToken that enables a wait to be canceled. + True if all waits succeeded, false if a timeout occurred. + + + + Internal WaitAll implementation which is meant to be used with small number of tasks, + optimized for Parallel.Invoke and other structured primitives. + + + + + This internal function is only meant to be called by WaitAll() + If the completed task is canceled or it has other exceptions, here we will add those + into the passed in exception list (which will be lazily initialized here). + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + The index of the completed task in the array argument. + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A that represents the number of milliseconds to wait, or a that represents -1 milliseconds to wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1 milliseconds, which represents an + infinite time-out -or- timeout is greater than + . + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + The was canceled. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + + + Waits for any of the provided objects to complete execution. + + + An array of instances on which to wait. + + + The number of milliseconds to wait, or (-1) to + wait indefinitely. + + + A to observe while waiting for a task to complete. + + + The index of the completed task in the array argument, or -1 if the + timeout occurred. + + + The argument is null. + + + The argument contains a null element. + + + The has been disposed. + + + is a negative number other than -1, which represents an + infinite time-out. + + + The was canceled. + + + + + Gets a unique ID for this Task instance. + + + Task IDs are assigned on-demand and do not necessarily represent the order in the which Task + instances were created. + + + + + Returns the unique ID of the currently executing Task. + + + + + Gets the Task instance currently executing, or + null if none exists. + + + + + Gets the Exception that caused the Task to end prematurely. If the Task completed successfully or has not yet thrown any + exceptions, this will return null. + + + Tasks that throw unhandled exceptions store the resulting exception and propagate it wrapped in a + in calls to Wait + or in accesses to the property. Any exceptions not observed by the time + the Task instance is garbage collected will be propagated on the finalizer thread. + + + The Task + has been disposed. + + + + + Gets the TaskStatus of this Task. + + + + + Gets whether this Task instance has completed + execution due to being canceled. + + + A Task will complete in Canceled state either if its CancellationToken + was marked for cancellation before the task started executing, or if the task acknowledged the cancellation request on + its already signaled CancellationToken by throwing an + OperationCanceledException2 that bears the same + CancellationToken. + + + + + Returns true if this task has a cancellation token and it was signaled. + To be used internally in execute entry codepaths. + + + + + This internal property provides access to the CancellationToken that was set on the task + when it was constructed. + + + + + Gets whether this threw an OperationCanceledException2 while its CancellationToken was signaled. + + + + + Gets whether this Task has completed. + + + will return true when the Task is in one of the three + final states: RanToCompletion, + Faulted, or + Canceled. + + + + + Checks whether this task has been disposed. + + + + + Gets the TaskCreationOptions used + to create this task. + + + + + Gets a that can be used to wait for the task to + complete. + + + Using the wait functionality provided by + should be preferred over using for similar + functionality. + + + The has been disposed. + + + + + Gets the state object supplied when the Task was created, + or null if none was supplied. + + + + + Gets an indication of whether the asynchronous operation completed synchronously. + + true if the asynchronous operation completed synchronously; otherwise, false. + + + + Provides access to the TaskScheduler responsible for executing this Task. + + + + + Provides access to factory methods for creating and instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on TaskFactory. + + + + + Provides an event that can be used to wait for completion. + Only called by Wait*(), which means that we really do need to instantiate a completion event. + + + + + Determines whether this is the root task of a self replicating group. + + + + + Determines whether the task is a replica itself. + + + + + The property formerly known as IsFaulted. + + + + + Gets whether the completed due to an unhandled exception. + + + If is true, the Task's will be equal to + TaskStatus.Faulted, and its + property will be non-null. + + + + + Checks whether the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag is set, + This will only be used by the implicit wait to prevent double throws + + + + + + Checks whether the body was ever invoked. Used by task scheduler code to verify custom schedulers actually ran the task. + + + + + A structure to hold continuation information. + + + + + Constructs a new continuation structure. + + The task to be activated. + The continuation options. + The scheduler to use for the continuation. + + + + Invokes the continuation for the target completion task. + + The completed task. + Whether the continuation can be inlined. + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The argument is null. + + + + + Initializes a new with the specified function. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The to be assigned to this task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified function and creation options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + The that will be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified function and state. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the action. + + The argument is null. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The argument is null. + + The provided CancellationToken + has already been disposed. + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + + + + Initializes a new with the specified action, state, and options. + + + The delegate that represents the code to execute in the task. When the function has completed, + the task's property will be set to return the result value of the function. + + An object representing data to be used by the function. + The to be assigned to the new task. + + The TaskCreationOptions used to + customize the task's behavior. + + + The argument is null. + + + The argument specifies an invalid value for . + + The provided CancellationToken + has already been disposed. + + + + + Creates a new future object. + + The parent task for this future. + A function that yields the future value. + The task scheduler which will be used to execute the future. + The CancellationToken for the task. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Creates a new future object. + + The parent task for this future. + An object containing data to be used by the action; may be null. + A function that yields the future value. + The CancellationToken for the task. + The task scheduler which will be used to execute the future. + Options to control the future's behavior. + Internal options to control the future's behavior. + The argument specifies + a SelfReplicating , which is illegal."/>. + + + + Evaluates the value selector of the Task which is passed in as an object and stores the result. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the continuation criteria specified through the parameter are not met, the continuation task will be canceled + instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + An action to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new continuation task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed. If the criteria specified through the parameter + are not met, the continuation task will be canceled instead of scheduled. + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + The that will be assigned to the new task. + A new continuation . + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + The to associate with the continuation task and to use for its execution. + + A new continuation . + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The argument is null. + + + The argument is null. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be + passed the completed task as an argument. + + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + A new continuation . + + + The returned will not be scheduled for execution until the current + task has completed, whether it completes due to running to completion successfully, faulting due + to an unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . This task's completion state will be transferred to the task returned + from the ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The has been disposed. + + + + + Creates a continuation that executes when the target completes. + + + The type of the result produced by the continuation. + + + A function to run when the completes. When run, the delegate will be passed as + an argument this completed task. + + The that will be assigned to the new task. + + Options for when the continuation is scheduled and how it behaves. This includes criteria, such + as OnlyOnCanceled, as + well as execution options, such as ExecuteSynchronously. + + + The to associate with the continuation task and to use for its + execution. + + A new continuation . + + + The returned will not be scheduled for execution until the current task has + completed, whether it completes due to running to completion successfully, faulting due to an + unhandled exception, or exiting out early due to being canceled. + + + The , when executed, should return a . + This task's completion state will be transferred to the task returned from the + ContinueWith call. + + + + The argument is null. + + + The argument specifies an invalid value for TaskContinuationOptions. + + + The argument is null. + + + The has been disposed. + + The provided CancellationToken + has already been disposed. + + + + + Gets the result value of this . + + + The get accessor for this property ensures that the asynchronous operation is complete before + returning. Once the result of the computation is available, it is stored and will be returned + immediately on later calls to . + + + + + Provides access to factory methods for creating instances. + + + The factory returned from is a default instance + of , as would result from using + the default constructor on the factory type. + + + + + Provides support for creating and scheduling + Task{TResult} objects. + + The type of the results that are available though + the Task{TResult} objects that are associated with + the methods in this class. + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task{TResult}.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the default configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory{TResult}. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory{TResult}. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory{TResult}. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory{TResult}. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The that will be assigned to the new task. + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The function delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory{TResult}. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory{TResult}. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory{TResult}. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents the current stage in the lifecycle of a . + + + + + The task has been initialized but has not yet been scheduled. + + + + + The task is waiting to be activated and scheduled internally by the .NET Framework infrastructure. + + + + + The task has been scheduled for execution but has not yet begun executing. + + + + + The task is running but has not yet completed. + + + + + The task has finished executing and is implicitly waiting for + attached child tasks to complete. + + + + + The task completed execution successfully. + + + + + The task acknowledged cancellation by throwing an OperationCanceledException2 with its own CancellationToken + while the token was in signaled state, or the task's CancellationToken was already signaled before the + task started executing. + + + + + The task completed due to an unhandled exception. + + + + + Specifies flags that control optional behavior for the creation and execution of tasks. + + + + + Specifies that the default behavior should be used. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides a hint to the + TaskScheduler that oversubscription may be + warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Task creation flags which are only used internally. + + + + Specifies "No internal task options" + + + Used to filter out internal vs. public task creation options. + + + Specifies that the task will be queued by the runtime before handing it over to the user. + This flag will be used to skip the cancellationtoken registration step, which is only meant for unstarted tasks. + + + + Specifies flags that control optional behavior for the creation and execution of continuation tasks. + + + + + Default = "Continue on any, no task options, run asynchronously" + Specifies that the default behavior should be used. Continuations, by default, will + be scheduled when the antecedent task completes, regardless of the task's final TaskStatus. + + + + + A hint to a TaskScheduler to schedule a + task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to + be run sooner, and tasks scheduled later will be more likely to be run later. + + + + + Specifies that a task will be a long-running, course-grained operation. It provides + a hint to the TaskScheduler that + oversubscription may be warranted. + + + + + Specifies that a task is attached to a parent in the task hierarchy. + + + + + Specifies that the continuation task should not be scheduled if its antecedent ran to completion. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled + exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should not be scheduled if its antecedent was canceled. This + option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent ran to + completion. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent threw an + unhandled exception. This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be scheduled only if its antecedent was canceled. + This option is not valid for multi-task continuations. + + + + + Specifies that the continuation task should be executed synchronously. With this option + specified, the continuation will be run on the same thread that causes the antecedent task to + transition into its final state. If the antecedent is already complete when the continuation is + created, the continuation will run on the thread creating the continuation. Only very + short-running continuations should be executed synchronously. + + + + + Represents an exception used to communicate task cancellation. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + Initializes a new instance of the class + with a reference to the that has been canceled. + + A task that has been canceled. + + + + Gets the task associated with this exception. + + + It is permissible for no Task to be associated with a + , in which case + this property will return null. + + + + + Represents the producer side of a unbound to a + delegate, providing access to the consumer side through the property. + + + + It is often the case that a is desired to + represent another asynchronous operation. + TaskCompletionSource is provided for this purpose. It enables + the creation of a task that can be handed out to consumers, and those consumers can use the members + of the task as they would any other. However, unlike most tasks, the state of a task created by a + TaskCompletionSource is controlled explicitly by the methods on TaskCompletionSource. This enables the + completion of the external asynchronous operation to be propagated to the underlying Task. The + separation also ensures that consumers are not able to transition the state without access to the + corresponding TaskCompletionSource. + + + All members of are thread-safe + and may be used from multiple threads concurrently. + + + The type of the result value assocatied with this . + + + + Creates a . + + + + + Creates a + with the specified options. + + + The created + by this instance and accessible through its property + will be instantiated using the specified . + + The options to use when creating the underlying + . + + The represent options invalid for use + with a . + + + + + Creates a + with the specified state. + + The state to use as the underlying + 's AsyncState. + + + + Creates a with + the specified state and options. + + The options to use when creating the underlying + . + The state to use as the underlying + 's AsyncState. + + The represent options invalid for use + with a . + + + + + Attempts to transition the underlying + into the + Faulted + state. + + The exception to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + The was disposed. + + + + Attempts to transition the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The argument is null. + There are one or more null elements in . + The collection is empty. + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The exception to bind to this . + The argument is null. + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Faulted + state. + + The collection of exceptions to bind to this . + The argument is null. + There are one or more null elements in . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + RanToCompletion + state. + + The result value to bind to this . + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Transitions the underlying + into the + Canceled + state. + + + The underlying is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Attempts to transition the underlying + into the + Canceled + state. + + True if the operation was successful; otherwise, false. + This operation will return false if the + is already in one + of the three final states: + RanToCompletion, + Faulted, or + Canceled. + + The was disposed. + + + + Gets the created + by this . + + + This property enables a consumer access to the that is controlled by this instance. + The , , + , and + methods (and their "Try" variants) on this instance all result in the relevant state + transitions on this underlying Task. + + + + + An exception holder manages a list of exceptions for one particular task. + It offers the ability to aggregate, but more importantly, also offers intrinsic + support for propagating unhandled exceptions that are never observed. It does + this by aggregating and throwing if the holder is ever GC'd without the holder's + contents ever having been requested (e.g. by a Task.Wait, Task.get_Exception, etc). + + + + + Creates a new holder; it will be registered for finalization. + + The task this holder belongs to. + + + + A finalizer that repropagates unhandled exceptions. + + + + + Add an exception to the internal list. This will ensure the holder is + in the proper state (handled/unhandled) depending on the list's contents. + + An exception object (either an Exception or an + IEnumerable{Exception}) to add to the list. + + + + A private helper method that ensures the holder is considered + unhandled, i.e. it is registered for finalization. + + + + + A private helper method that ensures the holder is considered + handled, i.e. it is not registered for finalization. + + Whether this is called from the finalizer thread. + + + + Allocates a new aggregate exception and adds the contents of the list to + it. By calling this method, the holder assumes exceptions to have been + "observed", such that the finalization check will be subsequently skipped. + + Whether this is being called from a finalizer. + An extra exception to be included (optionally). + The aggregate exception to throw. + + + + Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of + instances. + + + + + Creates a proxy Task that represents the + asynchronous operation of a Task{Task}. + + + It is often useful to be able to return a Task from a + Task{TResult}, where the inner Task represents work done as part of the outer Task{TResult}. However, + doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior. Unwrap + solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}. + + The Task{Task} to unwrap. + The exception that is thrown if the + argument is null. + A Task that represents the asynchronous operation of the provided Task{Task}. + + + + Creates a proxy Task{TResult} that represents the + asynchronous operation of a Task{Task{TResult}}. + + + It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult} + represents work done as part of the outer Task{TResult}. However, doing so results in a Task{Task{TResult}}, + which, if not dealt with carefully, could produce unexpected behavior. Unwrap solves this problem by + creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}. + + The Task{Task{TResult}} to unwrap. + The exception that is thrown if the + argument is null. + A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}. /// Unwraps a Task that returns another Task. + + + + Provides support for creating and scheduling + Tasks. + + + + There are many common patterns for which tasks are relevant. The + class encodes some of these patterns into methods that pick up default settings, which are + configurable through its constructors. + + + A default instance of is available through the + Task.Factory property. + + + + + + Initializes a instance with the default configuration. + + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + This constructor creates a instance with a default configuration. The + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The + TaskScheduler to use to schedule any tasks created with this TaskFactory. A null value + indicates that the current TaskScheduler should be used. + + + With this constructor, the + property is initialized to + TaskCreationOptions.None, the + property is initialized to TaskContinuationOptions.None, + and the TaskScheduler property is + initialized to , unless it's null, in which case the property is + initialized to the current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The exception that is thrown when the + argument or the + argument specifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Initializes a instance with the specified configuration. + + The default that will be assigned + to tasks created by this unless another CancellationToken is explicitly specified + while calling the factory methods. + + The default + TaskCreationOptions to use when creating tasks with this TaskFactory. + + + The default + TaskContinuationOptions to use when creating continuation tasks with this TaskFactory. + + + The default + TaskScheduler to use to schedule any Tasks created with this TaskFactory. A null value + indicates that TaskScheduler.Current should be used. + + + The exception that is thrown when the + argument or the + argumentspecifies an invalid value. + + + With this constructor, the + property is initialized to , + the + property is initialized to , and the TaskScheduler property is initialized to + , unless it's null, in which case the property is initialized to the + current scheduler (see TaskScheduler.Current). + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new task. + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors + and then calling + Start to schedule it for execution. However, + unless creation and scheduling must be separated, StartNew is the recommended + approach for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + The that will be assigned to the new + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The started Task. + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started Task. + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a Task. + + The action delegate to execute asynchronously. + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + Task. + The TaskScheduler + that is used to schedule the created Task. + The started Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a Task using one of its constructors and + then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The started . + The exception that is thrown when the + argument is null. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new + The started . + The exception that is thrown when the + argument is null. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + A TaskCreationOptions value that controls the behavior of the + created + . + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates and starts a . + + The type of the result available through the + Task. + + A function delegate that returns the future result to be available through + the . + An object containing data to be used by the + delegate. + The that will be assigned to the new task. + A TaskCreationOptions value that controls the behavior of the + created + . + The TaskScheduler + that is used to schedule the created + Task{TResult}. + The started . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The provided CancellationToken + has already been disposed. + + + Calling StartNew is functionally equivalent to creating a using one + of its constructors and then calling + Start to schedule it for execution. + However, unless creation and scheduling must be separated, StartNew is the recommended approach + for both simplicity and performance. + + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that executes an end method action + when a specified IAsyncResult completes. + + The IAsyncResult whose completion should trigger the processing of the + . + The action delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the asynchronous + operation. + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of begin + and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the + delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that represents the + asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that executes an end + method function when a specified IAsyncResult completes. + + The type of the result available through the + Task. + + The IAsyncResult whose completion should trigger the processing of the + . + The function delegate that processes the completed . + The TaskScheduler + that is used to schedule the task that executes the end method. + The TaskCreationOptions value that controls the behavior of the + created Task. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + A Task that represents the + asynchronous operation. + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Creates a Task that represents a pair of + begin and end methods that conform to the Asynchronous Programming Model pattern. + + The type of the first argument passed to the delegate. + The type of the second argument passed to + delegate. + The type of the third argument passed to + delegate. + The type of the result available through the + Task. + + The delegate that begins the asynchronous operation. + The delegate that ends the asynchronous operation. + The first argument passed to the + delegate. + The second argument passed to the + delegate. + The third argument passed to the + delegate. + The TaskCreationOptions value that controls the behavior of the + created Task. + An object containing data to be used by the + delegate. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument specifies an invalid TaskCreationOptions + value. + The created Task that + represents the asynchronous operation. + + This method throws any exceptions thrown by the . + + + + + Check validity of options passed to FromAsync method + + The options to be validated. + determines type of FromAsync method that called this method + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in + the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result of the antecedent . + The array of tasks from which to continue. + The action delegate to execute when all tasks in the array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of a set of provided Tasks. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue. + The function delegate to execute when all tasks in the + array have completed. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAll. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation Task. + The new continuation Task. + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result that is returned by the + delegate and associated with the created . + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The function delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Creates a continuation Task + that will be started upon the completion of any Task in the provided set. + + The type of the result of the antecedent . + The array of tasks from which to continue when one task completes. + The action delegate to execute when one task in the + array completes. + The CancellationToken + that will be assigned to the new continuation task. + The + TaskContinuationOptions value that controls the behavior of + the created continuation Task. + The TaskScheduler + that is used to schedule the created continuation . + The new continuation . + The exception that is thrown when the + array is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + argument is null. + The exception that is thrown when the + array contains a null value. + The exception that is thrown when the + array is empty. + The exception that is thrown when the + argument specifies an invalid TaskContinuationOptions + value. + The exception that is thrown when one + of the elements in the array has been disposed. + The provided CancellationToken + has already been disposed. + + + The NotOn* and OnlyOn* TaskContinuationOptions, + which constrain for which TaskStatus states a continuation + will be executed, are illegal with ContinueWhenAny. + + + + + Gets the default CancellationToken of this + TaskFactory. + + + This property returns the default that will be assigned to all + tasks created by this factory unless another CancellationToken value is explicitly specified + during the call to the factory methods. + + + + + Gets the TaskScheduler of this + TaskFactory. + + + This property returns the default scheduler for this factory. It will be used to schedule all + tasks unless another scheduler is explicitly specified during calls to this factory's methods. + If null, TaskScheduler.Current + will be used. + + + + + Gets the TaskCreationOptions + value of this TaskFactory. + + + This property returns the default creation options for this factory. They will be used to create all + tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Gets the TaskContinuationOptions + value of this TaskFactory. + + + This property returns the default continuation options for this factory. They will be used to create + all continuation tasks unless other options are explicitly specified during calls to this factory's methods. + + + + + Represents an abstract scheduler for tasks. + + + + TaskScheduler acts as the extension point for all + pluggable scheduling logic. This includes mechanisms such as how to schedule a task for execution, and + how scheduled tasks should be exposed to debuggers. + + + All members of the abstract type are thread-safe + and may be used from multiple threads concurrently. + + + + + + Queues a Task to the scheduler. + + + + A class derived from TaskScheduler + implements this method to accept tasks being scheduled on the scheduler. + A typical implementation would store the task in an internal data structure, which would + be serviced by threads that would execute those tasks at some time in the future. + + + This method is only meant to be called by the .NET Framework and + should not be called directly by the derived class. This is necessary + for maintaining the consistency of the system. + + + The Task to be queued. + The argument is null. + + + + Determines whether the provided Task + can be executed synchronously in this call, and if it can, executes it. + + + + A class derived from TaskScheduler implements this function to + support inline execution of a task on a thread that initiates a wait on that task object. Inline + execution is optional, and the request may be rejected by returning false. However, better + scalability typically results the more tasks that can be inlined, and in fact a scheduler that + inlines too little may be prone to deadlocks. A proper implementation should ensure that a + request executing under the policies guaranteed by the scheduler can successfully inline. For + example, if a scheduler uses a dedicated thread to execute tasks, any inlining requests from that + thread should succeed. + + + If a scheduler decides to perform the inline execution, it should do so by calling to the base + TaskScheduler's + TryExecuteTask method with the provided task object, propagating + the return value. It may also be appropriate for the scheduler to remove an inlined task from its + internal data structures if it decides to honor the inlining request. Note, however, that under + some circumstances a scheduler may be asked to inline a task that was not previously provided to + it with the method. + + + The derived scheduler is responsible for making sure that the calling thread is suitable for + executing the given task as far as its own scheduling and execution policies are concerned. + + + The Task to be + executed. + A Boolean denoting whether or not task has previously been + queued. If this parameter is True, then the task may have been previously queued (scheduled); if + False, then the task is known not to have been queued, and this call is being made in order to + execute the task inline without queueing it. + A Boolean value indicating whether the task was executed inline. + The argument is + null. + The was already + executed. + + + + Generates an enumerable of Task instances + currently queued to the scheduler waiting to be executed. + + + + A class derived from implements this method in order to support + integration with debuggers. This method will only be invoked by the .NET Framework when the + debugger requests access to the data. The enumerable returned will be traversed by debugging + utilities to access the tasks currently queued to this scheduler, enabling the debugger to + provide a representation of this information in the user interface. + + + It is important to note that, when this method is called, all other threads in the process will + be frozen. Therefore, it's important to avoid synchronization with other threads that may lead to + blocking. If synchronization is necessary, the method should prefer to throw a + than to block, which could cause a debugger to experience delays. Additionally, this method and + the enumerable returned must not modify any globally visible state. + + + The returned enumerable should never be null. If there are currently no queued tasks, an empty + enumerable should be returned instead. + + + For developers implementing a custom debugger, this method shouldn't be called directly, but + rather this functionality should be accessed through the internal wrapper method + GetScheduledTasksForDebugger: + internal Task[] GetScheduledTasksForDebugger(). This method returns an array of tasks, + rather than an enumerable. In order to retrieve a list of active schedulers, a debugger may use + another internal method: internal static TaskScheduler[] GetTaskSchedulersForDebugger(). + This static method returns an array of all active TaskScheduler instances. + GetScheduledTasksForDebugger then may be used on each of these scheduler instances to retrieve + the list of scheduled tasks for each. + + + An enumerable that allows traversal of tasks currently queued to this scheduler. + + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Retrieves some thread static state that can be cached and passed to multiple + TryRunInline calls, avoiding superflous TLS fetches. + + A bag of TLS state (or null if none exists). + + + + Attempts to execute the target task synchronously. + + The task to run. + True if the task may have been previously queued, + false if the task was absolutely not previously queued. + The state retrieved from GetThreadStatics + True if it ran, false otherwise. + + + + Attempts to dequeue a Task that was previously queued to + this scheduler. + + The Task to be dequeued. + A Boolean denoting whether the argument was successfully dequeued. + The argument is null. + + + + Notifies the scheduler that a work item has made progress. + + + + + Initializes the . + + + + + Frees all resources associated with this scheduler. + + + + + Creates a + associated with the current . + + + All Task instances queued to + the returned scheduler will be executed through a call to the + Post method + on that context. + + + A associated with + the current SynchronizationContext, as + determined by SynchronizationContext.Current. + + + The current SynchronizationContext may not be used as a TaskScheduler. + + + + + Attempts to execute the provided Task + on this scheduler. + + + + Scheduler implementations are provided with Task + instances to be executed through either the method or the + method. When the scheduler deems it appropriate to run the + provided task, should be used to do so. TryExecuteTask handles all + aspects of executing a task, including action invocation, exception handling, state management, + and lifecycle control. + + + must only be used for tasks provided to this scheduler by the .NET + Framework infrastructure. It should not be used to execute arbitrary tasks obtained through + custom mechanisms. + + + + A Task object to be executed. + + The is not associated with this scheduler. + + A Boolean that is true if was successfully executed, false if it + was not. A common reason for execution failure is that the task had previously been executed or + is in the process of being executed by another thread. + + + + Provides an array of all queued Task instances + for the debugger. + + + The returned array is populated through a call to . + Note that this function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of Task instances. + + This scheduler is unable to generate a list of queued tasks at this time. + + + + + Provides an array of all active TaskScheduler + instances for the debugger. + + + This function is only meant to be invoked by a debugger remotely. + It should not be called by any other codepaths. + + An array of TaskScheduler instances. + + + + Registers a new TaskScheduler instance in the global collection of schedulers. + + + + + Removes a TaskScheduler instance from the global collection of schedulers. + + + + + Indicates the maximum concurrency level this + is able to support. + + + + + Indicates whether this is a custom scheduler, in which case the safe code paths will be taken upon task entry + using a CAS to transition from queued state to executing. + + + + + Gets the default TaskScheduler instance. + + + + + Gets the TaskScheduler + associated with the currently executing task. + + + When not called from within a task, will return the scheduler. + + + + + Gets the unique ID for this . + + + + + Occurs when a faulted 's unobserved exception is about to trigger exception escalation + policy, which, by default, would terminate the process. + + + This AppDomain-wide event provides a mechanism to prevent exception + escalation policy (which, by default, terminates the process) from triggering. + Each handler is passed a + instance, which may be used to examine the exception and to mark it as observed. + + + + + Nested class that provides debugger view for TaskScheduler + + + + Default thread pool scheduler. + + + + A TaskScheduler implementation that executes all tasks queued to it through a call to + on the + that its associated with. The default constructor for this class binds to the current + + + + + Constructs a SynchronizationContextTaskScheduler associated with + + This constructor expects to be set. + + + + Implemetation of for this scheduler class. + + Simply posts the tasks to be executed on the associated . + + + + + + Implementation of for this scheduler class. + + The task will be executed inline only if the call happens within + the associated . + + + + + + + Implementes the property for + this scheduler class. + + By default it returns 1, because a based + scheduler only supports execution on a single thread. + + + + + Provides data for the event that is raised when a faulted 's + exception goes unobserved. + + + The Exception property is used to examine the exception without marking it + as observed, whereas the method is used to mark the exception + as observed. Marking the exception as observed prevents it from triggering exception escalation policy + which, by default, terminates the process. + + + + + Initializes a new instance of the class + with the unobserved exception. + + The Exception that has gone unobserved. + + + + Marks the as "observed," thus preventing it + from triggering exception escalation policy which, by default, terminates the process. + + + + + Gets whether this exception has been marked as "observed." + + + + + The Exception that went unobserved. + + + + + Represents an exception used to communicate an invalid operation by a + . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class using the default error message and a reference to the inner exception that is the cause of + this exception. + + The exception that is the cause of the current exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.IO.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.IO.dll new file mode 100644 index 0000000..32dd41b Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.IO.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.IO.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.IO.xml new file mode 100644 index 0000000..9c758e6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.IO.xml @@ -0,0 +1,51 @@ + + + + System.IO + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Found invalid data while decoding.. + + + + + The exception that is thrown when a data stream is in an invalid format. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Runtime.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Runtime.dll new file mode 100644 index 0000000..118fcce Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Runtime.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Runtime.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Runtime.xml new file mode 100644 index 0000000..851d26f --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Runtime.xml @@ -0,0 +1,56 @@ + + + + System.Runtime + + + + Defines a provider for progress updates. + The type of progress update value. + + + Reports a progress update. + The value of the updated progress. + + + Identities the async state machine type for this method. + + + Identities the state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + Gets the type that implements the state machine. + + + Initializes the attribute. + The type that implements the state machine. + + + + Allows you to obtain the method or property name of the caller to the method. + + + + + Allows you to obtain the line number in the source file at which the method is called. + + + + + Allows you to obtain the full path of the source file that contains the caller. + This is the file path at the time of compile. + + + + Identities the iterator state machine type for this method. + + + Initializes the attribute. + The type that implements the state machine. + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Threading.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Threading.Tasks.dll new file mode 100644 index 0000000..a60ab26 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Threading.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Threading.Tasks.xml b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Threading.Tasks.xml new file mode 100644 index 0000000..42c08c5 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/sl5/System.Threading.Tasks.xml @@ -0,0 +1,475 @@ + + + + System.Threading.Tasks + + + + Holds state related to the builder's IAsyncStateMachine. + This is a mutable struct. Be very delicate with it. + + + A reference to the heap-allocated state machine object associated with this builder. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument is null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + + Gets the Action to use with an awaiter's OnCompleted or UnsafeOnCompleted method. + On first invocation, the supplied state machine will be boxed. + + Specifies the type of the method builder used. + Specifies the type of the state machine used. + The builder. + The state machine. + An Action to provide to the awaiter. + + + Provides the ability to invoke a state machine's MoveNext method under a supplied ExecutionContext. + + + The context with which to run MoveNext. + + + The state machine whose MoveNext method should be invoked. + + + Initializes the runner. + The context with which to run MoveNext. + + + Invokes MoveNext under the provided context. + + + Cached delegate used with ExecutionContext.Run. + + + Invokes the MoveNext method on the supplied IAsyncStateMachine. + The IAsyncStateMachine machine instance. + + + Provides a base class used to cache tasks of a specific return type. + Specifies the type of results the cached tasks return. + + + + A singleton cache for this result type. + This may be null if there are no cached tasks for this TResult. + + + + Creates a non-disposable task. + The result for the task. + The cacheable task. + + + Creates a cache. + A task cache for this result type. + + + Gets a cached task if one exists. + The result for which we want a cached task. + A cached task if one exists; otherwise, null. + + + Provides a cache for Boolean tasks. + + + A true task. + + + A false task. + + + Gets a cached task for the Boolean result. + true or false + A cached task for the Boolean result. + + + Provides a cache for zero Int32 tasks. + + + The minimum value, inclusive, for which we want a cached task. + + + The maximum value, exclusive, for which we want a cached task. + + + The cache of Task{Int32}. + + + Creates an array of cached tasks for the values in the range [INCLUSIVE_MIN,EXCLUSIVE_MAX). + + + Gets a cached task for the zero Int32 result. + The integer value + A cached task for the Int32 result or null if not cached. + + + Throws the exception on the ThreadPool. + The exception to propagate. + The target context on which to propagate the exception. Null to use the ThreadPool. + + + Copies the exception's stack trace so its stack trace isn't overwritten. + The exception to prepare. + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + Represents an asynchronous method builder. + + + A cached VoidTaskResult task used for builders that complete synchronously. + + + The generic builder object to which this non-generic instance delegates. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state. + + The builder is not initialized. + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + + Gets the for this builder. + The representing the builder's asynchronous operation. + The builder is not initialized. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return . + This type is intended for compiler use only. + + + AsyncTaskMethodBuilder{TResult} is a value type, and thus it is copied by value. + Prior to being copied, one of its Task, SetResult, or SetException members must be accessed, + or else the copies may end up building distinct Task instances. + + + + A cached task for default(TResult). + + + State related to the IAsyncStateMachine. + + + The lazily-initialized task. + Must be named m_task for debugger step-over to work correctly. + + + The lazily-initialized task completion source. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Initializes a new . + The initialized . + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Completes the in the + RanToCompletion state with the specified result. + + The result to use to complete the task. + The task has already completed. + + + + Completes the builder by using either the supplied completed task, or by completing + the builder's previously accessed task using default(TResult). + + A task already completed with the value default(TResult). + The task has already completed. + + + + Completes the in the + Faulted state with the specified exception. + + The to use to fault the task. + The argument is null (Nothing in Visual Basic). + The task has already completed. + + + + Called by the debugger to request notification when the first wait operation + (await, Wait, Result, etc.) on this builder's task completes. + + + true to enable notification; false to disable a previously set notification. + + + This should only be invoked from within an asynchronous method, + and only by the debugger. + + + + + Gets a task for the specified result. This will either + be a cached or new task, never null. + + The result for which we need a task. + The completed task containing the result. + + + Gets the lazily-initialized TaskCompletionSource. + + + Gets the for this builder. + The representing the builder's asynchronous operation. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger, and only in a single-threaded manner + when no other threads are in the middle of accessing this property or this.Task. + + + + + Provides a builder for asynchronous methods that return void. + This type is intended for compiler use only. + + + + The synchronization context associated with this operation. + + + State related to the IAsyncStateMachine. + + + An object used by the debugger to uniquely identify this builder. Lazily initialized. + + + Temporary support for disabling crashing if tasks go unobserved. + + + Registers with UnobservedTaskException to suppress exception crashing. + + + Non-zero if PreventUnobservedTaskExceptions has already been invoked. + + + Initializes a new . + The initialized . + + + Initializes the . + The synchronizationContext associated with this operation. This may be null. + + + Initiates the builder's execution with the associated state machine. + Specifies the type of the state machine. + The state machine instance, passed by reference. + The argument was null (Nothing in Visual Basic). + + + Associates the builder with the state machine it represents. + The heap-allocated state machine object. + The argument was null (Nothing in Visual Basic). + The builder is incorrectly initialized. + + + Perform any initialization necessary prior to lifting the builder to the heap. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + + Schedules the specified state machine to be pushed forward when the specified awaiter completes. + + Specifies the type of the awaiter. + Specifies the type of the state machine. + The awaiter. + The state machine. + + + Completes the method builder successfully. + + + Faults the method builder with an exception. + The exception that is the cause of this fault. + The argument is null (Nothing in Visual Basic). + The builder is not initialized. + + + Notifies the current synchronization context that the operation completed. + + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + This property lazily instantiates the ID in a non-thread-safe manner. + It must only be used by the debugger and only in a single-threaded manner. + + + + + Represents state machines generated for asynchronous methods. + This type is intended for compiler use only. + + + + Moves the state machine to its next state. + + + Configures the state machine with a heap-allocated replica. + The heap-allocated replica. + + + + Represents an awaiter used to schedule continuations when an await operation completes. + + + + + Represents an operation that will schedule continuations when the operation completes. + + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + + + Schedules the continuation action to be invoked when the instance completes. + The action to invoke when the operation completes. + The argument is null (Nothing in Visual Basic). + Unlike OnCompleted, UnsafeOnCompleted need not propagate ExecutionContext information. + + + Used with Task(of void) + + + diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/win8/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/win8/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/wp8/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/wp8/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/wpa81/_._ b/LiveXAMLApp/packages/Microsoft.Bcl.1.1.10/lib/wpa81/_._ new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/License-Stable.rtf b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/License-Stable.rtf new file mode 100644 index 0000000..3aec6b6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/License-Stable.rtf @@ -0,0 +1,118 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset0 Times New Roman;}{\f2\fswiss\fprq2\fcharset0 Calibri;}{\f3\fnil\fcharset0 Calibri;}{\f4\fnil\fcharset2 Symbol;}} +{\colortbl ;\red31\green73\blue125;\red0\green0\blue255;} +{\*\listtable +{\list\listhybrid +{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx360} +{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx363} +{\listlevel\levelnfc2\leveljc0\levelstartat1{\leveltext\'02\'02.;}{\levelnumbers\'01;}\jclisttab\tx720}\listid1 } +{\list\listhybrid +{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx363} +{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx363}\listid2 }} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +{\stylesheet{ Normal;}{\s1 heading 1;}{\s2 heading 2;}{\s3 heading 3;}} +{\*\generator Riched20 6.2.9200}\viewkind4\uc1 +\pard\nowidctlpar\sb120\sa120\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\par + +\pard\brdrb\brdrs\brdrw10\brsp20 \nowidctlpar\sb120\sa120 MICROSOFT .NET LIBRARY \par + +\pard\nowidctlpar\sb120\sa120\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120\b0 updates,\par +{\pntext\f4\'B7\tab}supplements,\par +{\pntext\f4\'B7\tab}Internet-based services, and\par +{\pntext\f4\'B7\tab}support services\par + +\pard\nowidctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par + +\pard\brdrt\brdrs\brdrw10\brsp20 \nowidctlpar\sb120\sa120 IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard +{\listtext\f0 1.\tab}\jclisttab\tx360\ls1\nowidctlpar\s1\fi-357\li357\sb120\sa120 INSTALLATION AND USE RIGHTS. \par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls1\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 Installation and Use.\b0\fs20 You may install and use any number of copies of the software to design, develop and test your programs.\par +{\listtext\f0 b.\tab}\b\fs19 Third Party Programs.\b0\fs20 The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard +{\listtext\f0 2.\tab}\jclisttab\tx360\ls1\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls1\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 DISTRIBUTABLE CODE.\~ \b0 The software is comprised of Distributable Code. \f1\ldblquote\f0 Distributable Code\f1\rdblquote\f0 is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\par + +\pard +{\listtext\f0 i.\tab}\jclisttab\tx720\ls1\ilvl2\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077 Right to Use and Distribute. \par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 You may copy and distribute the object code form of the software.\par +{\pntext\f4\'B7\tab}Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\par + +\pard\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077\b ii.\tab Distribution Requirements.\b0 \b For any Distributable Code you distribute, you must\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 add significant primary functionality to it in your programs;\par +{\pntext\f4\'B7\tab}require distributors and external end users to agree to terms that protect it at least as much as this agreement;\par +{\pntext\f4\'B7\tab}display your valid copyright notice on your programs; and\par +{\pntext\f4\'B7\tab}indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\par + +\pard\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077\b iii.\tab Distribution Restrictions.\b0 \b You may not\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 alter any copyright, trademark or patent notice in the Distributable Code;\par +{\pntext\f4\'B7\tab}use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\par +{\pntext\f4\'B7\tab}include Distributable Code in malicious, deceptive or unlawful programs; or\par +{\pntext\f4\'B7\tab}modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-358\li1792\sb120\sa120 the code be disclosed or distributed in source code form; or\cf1\f2\par +{\pntext\f4\'B7\tab}\cf0\f0 others have the right to modify it.\cf1\f2\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\cf0\b\f0 3.\tab\fs19 SCOPE OF LICENSE. \b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120 work around any technical limitations in the software;\par +{\pntext\f4\'B7\tab}reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +{\pntext\f4\'B7\tab}publish the software for others to copy;\par +{\pntext\f4\'B7\tab}rent, lease or lend the software;\par +{\pntext\f4\'B7\tab}transfer the software or this agreement to any third party; or\par +{\pntext\f4\'B7\tab}use the software for commercial software hosting services.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\b\fs20 4.\tab\fs19 BACKUP COPY. \b0 You may make one backup copy of the software. You may use it only to reinstall the software.\par +\b\fs20 5.\tab\fs19 DOCUMENTATION. \b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\par +\b\fs20 6.\tab\fs19 EXPORT RESTRICTIONS. \b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see {\cf2\ul\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting}}}}\f0\fs19 .\cf2\ul\fs20\par +\cf0\ulnone\b 7.\tab\fs19 SUPPORT SERVICES. \b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\par +\b\fs20 8.\tab\fs19 ENTIRE AGREEMENT. \b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\par +\b\fs20 9.\tab\fs19 APPLICABLE LAW.\par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls2\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 United States. \b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\par +{\listtext\f0 b.\tab}\b Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 10.\tab\fs19 LEGAL EFFECT. \b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\par +\b\fs20 11.\tab\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\nowidctlpar\li357\sb120\sa120 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 12.\tab\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\nowidctlpar\li357\sb120\sa120\b0 This limitation applies to\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +{\pntext\f4\'B7\tab}claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\nowidctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\par +Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\par + +\pard\nowidctlpar\s1\sb120\sa120\b\lang1033 EXON\'c9RATION DE GARANTIE. \b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\par +\b LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES. \b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\par + +\pard\nowidctlpar\sb120\sa120\lang9 Cette limitation concerne :\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\li720\sb120\sa120 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\par +{\pntext\f4\'B7\tab}les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\par + +\pard\nowidctlpar\sb120\sa120 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\par + +\pard\nowidctlpar\s1\sb120\sa120\b\lang1033 EFFET JURIDIQUE. \b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\par + +\pard\nowidctlpar\sb120\sa120\b\fs20\lang1036\par + +\pard\sa200\sl276\slmult1\b0\f3\fs22\lang9\par +} + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/Microsoft.Bcl.Build.1.0.21.nupkg b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/Microsoft.Bcl.Build.1.0.21.nupkg new file mode 100644 index 0000000..2ce3e31 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/Microsoft.Bcl.Build.1.0.21.nupkg differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/build/Microsoft.Bcl.Build.Tasks.dll b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/build/Microsoft.Bcl.Build.Tasks.dll new file mode 100644 index 0000000..5c71879 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/build/Microsoft.Bcl.Build.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/build/Microsoft.Bcl.Build.targets b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/build/Microsoft.Bcl.Build.targets new file mode 100644 index 0000000..32fd3f3 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Bcl.Build.1.0.21/build/Microsoft.Bcl.Build.targets @@ -0,0 +1,250 @@ + + + + true + + + + + false + + + $(ProjectConfigFileName) + + + + + + <_FullFrameworkReferenceAssemblyPaths>$(TargetFrameworkDirectory) + + + + + + <__IntermediateAppConfig>$(IntermediateOutputPath)$(MSBuildProjectFile).App.config + true + + + + false + true + + + + + true + true + + + + + + + + + <_EnsureBindingRedirectReference Include="@(Reference)" + Condition="'%(Reference.HintPath)' != '' and Exists('$([System.IO.Path]::GetDirectoryName("%(Reference.HintPath)"))\\ensureRedirect.xml')" /> + + + + + + + + + + + + + + + $(__IntermediateAppConfig) + + + + + $(TargetFileName).config + + + + + + + + + + + <_BclBuildProjectReferenceProperties>BclBuildReferencingProject=$(MSBuildProjectFullPath);BclBuildReferencingProjectConfig=$(MSBuildProjectDirectory)\packages.config + <_BclBuildProjectReferenceProperties Condition="'$(SkipValidatePackageReferences)' != ''">$(_BclBuildProjectReferenceProperties);SkipValidatePackageReferences=$(SkipValidatePackageReferences) + + + + + $(_BclBuildProjectReferenceProperties);%(ProjectReference.AdditionalProperties) + + + + + + + + true + + + + + + + + + + false + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/License-Stable.rtf b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/License-Stable.rtf new file mode 100644 index 0000000..3aec6b6 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/License-Stable.rtf @@ -0,0 +1,118 @@ +{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Tahoma;}{\f1\froman\fprq2\fcharset0 Times New Roman;}{\f2\fswiss\fprq2\fcharset0 Calibri;}{\f3\fnil\fcharset0 Calibri;}{\f4\fnil\fcharset2 Symbol;}} +{\colortbl ;\red31\green73\blue125;\red0\green0\blue255;} +{\*\listtable +{\list\listhybrid +{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx360} +{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx363} +{\listlevel\levelnfc2\leveljc0\levelstartat1{\leveltext\'02\'02.;}{\levelnumbers\'01;}\jclisttab\tx720}\listid1 } +{\list\listhybrid +{\listlevel\levelnfc0\leveljc0\levelstartat1{\leveltext\'02\'00.;}{\levelnumbers\'01;}\jclisttab\tx363} +{\listlevel\levelnfc4\leveljc0\levelstartat1{\leveltext\'02\'01.;}{\levelnumbers\'01;}\jclisttab\tx363}\listid2 }} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}} +{\stylesheet{ Normal;}{\s1 heading 1;}{\s2 heading 2;}{\s3 heading 3;}} +{\*\generator Riched20 6.2.9200}\viewkind4\uc1 +\pard\nowidctlpar\sb120\sa120\b\f0\fs24 MICROSOFT SOFTWARE LICENSE TERMS\par + +\pard\brdrb\brdrs\brdrw10\brsp20 \nowidctlpar\sb120\sa120 MICROSOFT .NET LIBRARY \par + +\pard\nowidctlpar\sb120\sa120\fs19 These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms also apply to any Microsoft\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120\b0 updates,\par +{\pntext\f4\'B7\tab}supplements,\par +{\pntext\f4\'B7\tab}Internet-based services, and\par +{\pntext\f4\'B7\tab}support services\par + +\pard\nowidctlpar\sb120\sa120\b for this software, unless other terms accompany those items. If so, those terms apply.\par +BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.\par + +\pard\brdrt\brdrs\brdrw10\brsp20 \nowidctlpar\sb120\sa120 IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE PERPETUAL RIGHTS BELOW.\par + +\pard +{\listtext\f0 1.\tab}\jclisttab\tx360\ls1\nowidctlpar\s1\fi-357\li357\sb120\sa120 INSTALLATION AND USE RIGHTS. \par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls1\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 Installation and Use.\b0\fs20 You may install and use any number of copies of the software to design, develop and test your programs.\par +{\listtext\f0 b.\tab}\b\fs19 Third Party Programs.\b0\fs20 The software may include third party programs that Microsoft, not the third party, licenses to you under this agreement. Notices, if any, for the third party program are included for your information only.\b\fs19\par + +\pard +{\listtext\f0 2.\tab}\jclisttab\tx360\ls1\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.\par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls1\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 DISTRIBUTABLE CODE.\~ \b0 The software is comprised of Distributable Code. \f1\ldblquote\f0 Distributable Code\f1\rdblquote\f0 is code that you are permitted to distribute in programs you develop if you comply with the terms below.\b\par + +\pard +{\listtext\f0 i.\tab}\jclisttab\tx720\ls1\ilvl2\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077 Right to Use and Distribute. \par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 You may copy and distribute the object code form of the software.\par +{\pntext\f4\'B7\tab}Third Party Distribution. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.\par + +\pard\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077\b ii.\tab Distribution Requirements.\b0 \b For any Distributable Code you distribute, you must\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 add significant primary functionality to it in your programs;\par +{\pntext\f4\'B7\tab}require distributors and external end users to agree to terms that protect it at least as much as this agreement;\par +{\pntext\f4\'B7\tab}display your valid copyright notice on your programs; and\par +{\pntext\f4\'B7\tab}indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\rquote fees, related to the distribution or use of your programs.\par + +\pard\nowidctlpar\s3\fi-357\li1077\sb120\sa120\tx1077\b iii.\tab Distribution Restrictions.\b0 \b You may not\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-357\li1434\sb120\sa120\b0 alter any copyright, trademark or patent notice in the Distributable Code;\par +{\pntext\f4\'B7\tab}use Microsoft\rquote s trademarks in your programs\rquote names or in a way that suggests your programs come from or are endorsed by Microsoft;\par +{\pntext\f4\'B7\tab}include Distributable Code in malicious, deceptive or unlawful programs; or\par +{\pntext\f4\'B7\tab}modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\fi-358\li1792\sb120\sa120 the code be disclosed or distributed in source code form; or\cf1\f2\par +{\pntext\f4\'B7\tab}\cf0\f0 others have the right to modify it.\cf1\f2\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\cf0\b\f0 3.\tab\fs19 SCOPE OF LICENSE. \b0 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120 work around any technical limitations in the software;\par +{\pntext\f4\'B7\tab}reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;\par +{\pntext\f4\'B7\tab}publish the software for others to copy;\par +{\pntext\f4\'B7\tab}rent, lease or lend the software;\par +{\pntext\f4\'B7\tab}transfer the software or this agreement to any third party; or\par +{\pntext\f4\'B7\tab}use the software for commercial software hosting services.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\b\fs20 4.\tab\fs19 BACKUP COPY. \b0 You may make one backup copy of the software. You may use it only to reinstall the software.\par +\b\fs20 5.\tab\fs19 DOCUMENTATION. \b0 Any person that has valid access to your computer or internal network may copy and use the documentation for your internal, reference purposes.\par +\b\fs20 6.\tab\fs19 EXPORT RESTRICTIONS. \b0 The software is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see {\cf2\ul\fs20{\field{\*\fldinst{HYPERLINK www.microsoft.com/exporting }}{\fldrslt{www.microsoft.com/exporting}}}}\f0\fs19 .\cf2\ul\fs20\par +\cf0\ulnone\b 7.\tab\fs19 SUPPORT SERVICES. \b0 Because this software is \ldblquote as is,\rdblquote we may not provide support services for it.\par +\b\fs20 8.\tab\fs19 ENTIRE AGREEMENT. \b0 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.\par +\b\fs20 9.\tab\fs19 APPLICABLE LAW.\par + +\pard +{\listtext\f0 a.\tab}\jclisttab\tx363\ls2\ilvl1\nowidctlpar\s2\fi-363\li720\sb120\sa120 United States. \b0 If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.\par +{\listtext\f0 b.\tab}\b Outside the United States. If you acquired the software in any other country, the laws of that country apply.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 10.\tab\fs19 LEGAL EFFECT. \b0 This agreement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your country if the laws of your country do not permit it to do so.\par +\b\fs20 11.\tab\fs19 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \ldblquote AS-IS.\rdblquote YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS OR STATUTORY GUARANTEES UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.\par + +\pard\nowidctlpar\li357\sb120\sa120 FOR AUSTRALIA \endash YOU HAVE STATUTORY GUARANTEES UNDER THE AUSTRALIAN CONSUMER LAW AND NOTHING IN THESE TERMS IS INTENDED TO AFFECT THOSE RIGHTS.\par + +\pard\nowidctlpar\s1\fi-357\li357\sb120\sa120\fs20 12.\tab\fs19 LIMITATION ON AND EXCLUSION OF REMEDIES AND DAMAGES. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.\par + +\pard\nowidctlpar\li357\sb120\sa120\b0 This limitation applies to\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent363{\pntxtb\'B7}}\nowidctlpar\fi-363\li720\sb120\sa120 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and\par +{\pntext\f4\'B7\tab}claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.\par + +\pard\nowidctlpar\sb120\sa120 It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limitation of incidental, consequential or other damages.\par +\lang9 Please note: As this software is distributed in Quebec, Canada, some of the clauses in this agreement are provided below in French.\par +Remarque : Ce logiciel \'e9tant distribu\'e9 au Qu\'e9bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7ais.\par + +\pard\nowidctlpar\s1\sb120\sa120\b\lang1033 EXON\'c9RATION DE GARANTIE. \b0 Le logiciel vis\'e9 par une licence est offert \'ab tel quel \'bb. Toute utilisation de ce logiciel est \'e0 votre seule risque et p\'e9ril. Microsoft n\rquote accorde aucune autre garantie expresse. Vous pouvez b\'e9n\'e9ficier de droits additionnels en vertu du droit local sur la protection des consommateurs, que ce contrat ne peut modifier. La ou elles sont permises par le droit locale, les garanties implicites de qualit\'e9 marchande, d\rquote ad\'e9quation \'e0 un usage particulier et d\rquote absence de contrefa\'e7on sont exclues.\par +\b LIMITATION DES DOMMAGES-INT\'c9R\'caTS ET EXCLUSION DE RESPONSABILIT\'c9 POUR LES DOMMAGES. \b0 Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs uniquement \'e0 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9tendre \'e0 aucune indemnisation pour les autres dommages, y compris les dommages sp\'e9ciaux, indirects ou accessoires et pertes de b\'e9n\'e9fices.\par + +\pard\nowidctlpar\sb120\sa120\lang9 Cette limitation concerne :\par + +\pard{\pntext\f4\'B7\tab}{\*\pn\pnlvlblt\pnf4\pnindent360{\pntxtb\'B7}}\nowidctlpar\li720\sb120\sa120 tout ce qui est reli\'e9 au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers ; et\par +{\pntext\f4\'B7\tab}les r\'e9clamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9 stricte, de n\'e9gligence ou d\rquote une autre faute dans la limite autoris\'e9e par la loi en vigueur.\par + +\pard\nowidctlpar\sb120\sa120 Elle s\rquote applique \'e9galement, m\'eame si Microsoft connaissait ou devrait conna\'eetre l\rquote\'e9ventualit\'e9 d\rquote un tel dommage. Si votre pays n\rquote autorise pas l\rquote exclusion ou la limitation de responsabilit\'e9 pour les dommages indirects, accessoires ou de quelque nature que ce soit, il se peut que la limitation ou l\rquote exclusion ci-dessus ne s\rquote appliquera pas \'e0 votre \'e9gard.\par + +\pard\nowidctlpar\s1\sb120\sa120\b\lang1033 EFFET JURIDIQUE. \b0 Le pr\'e9sent contrat d\'e9crit certains droits juridiques. Vous pourriez avoir d\rquote autres droits pr\'e9vus par les lois de votre pays. Le pr\'e9sent contrat ne modifie pas les droits que vous conf\'e8rent les lois de votre pays si celles-ci ne le permettent pas.\par + +\pard\nowidctlpar\sb120\sa120\b\fs20\lang1036\par + +\pard\sa200\sl276\slmult1\b0\f3\fs22\lang9\par +} + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/Microsoft.Net.Http.2.2.29.nupkg b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/Microsoft.Net.Http.2.2.29.nupkg new file mode 100644 index 0000000..9a4d451 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/Microsoft.Net.Http.2.2.29.nupkg differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/Xamarin.iOS10/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monoandroid/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/monotouch/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..ed0a580 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.WebRequest.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.WebRequest.dll new file mode 100644 index 0000000..7ccd641 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.WebRequest.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.WebRequest.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.WebRequest.xml new file mode 100644 index 0000000..3b85ad8 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.WebRequest.xml @@ -0,0 +1,52 @@ + + + + System.Net.Http.WebRequest + + + + + + Implements a transport handler using instances to send HTTP requests to servers. + + + Initializes a new instance of the class. + + + Gets or sets a value that indicates whether to pipeline the request to the Internet resource. + Returns .true if the request should be pipelined; otherwise, false. The default is true. + + + Gets or sets a value indicating the level of authentication and impersonation used for this request. + Returns .A bitwise combination of the values. The default value is . + + + Gets or sets the cache policy for this request. + Returns .A object that defines a cache policy. The default is . + + + Gets or sets the collection of security certificates that are associated with this request. + Returns .The collection of security certificates associated with this request. + + + Gets or sets the amount of time, in milliseconds, the application will wait for 100-continue from the server before uploading data. + Returns .The amount of time, in milliseconds, the application will wait for 100-continue from the server before uploading data. The default value is 350 milliseconds. + + + Gets or sets the impersonation level for the current request. + Returns .The impersonation level for the request. The default is . + + + Gets or sets the maximum allowed length of the response headers. + Returns .The length, in kilobytes (1024 bytes), of the response headers. + + + Gets or sets a time-out in milliseconds when writing a request to or reading a response from a server. + Returns .The number of milliseconds before the writing or reading times out. The default value is 300,000 milliseconds (5 minutes). + + + Gets or sets a value that indicates whether to allow high-speed NTLM-authenticated connection sharing. + Returns .true to keep the authenticated connection open; otherwise, false. + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.dll new file mode 100644 index 0000000..61f6b05 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.xml new file mode 100644 index 0000000..8e0255e --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/System.Net.Http.xml @@ -0,0 +1,1581 @@ + + + + System.Net.Http + + + + Provides HTTP content based on a byte array. + + + Initializes a new instance of the class. + The content used to initialize the . + The parameter is null. + + + Initializes a new instance of the class. + The content used to initialize the . + The offset, in bytes, in the parameter used to initialize the . + The number of bytes in the starting from the parameter used to initialize the . + The parameter is null. + The parameter is less than zero.-or-The parameter is greater than the length of content specified by the parameter.-or-The parameter is less than zero.-or-The parameter is greater than the length of content specified by the parameter - minus the parameter. + + + Creates an HTTP content stream for reading whose backing store is memory from the . + Returns .The HTTP content stream. + + + Serialize and write the byte array provided in the constructor to an HTTP content stream. + The target stream. + Information about the transport(channel binding token, for example). This parameter may be null. + + + Serialize and write the byte array provided in the constructor to an HTTP content stream as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The target stream. + Information about the transport, like channel binding token. This parameter may be null. + + + Determines whether a byte array has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the byte array. + + + A base type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler. + + + Initializes a new instance of the class with a specific inner handler. + The inner handler which is responsible for processing the HTTP response messages. + + + Releases the unmanaged resources used by the , and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Sends an HTTP request to the inner handler to send to the server synchronously. + Returns . The HTTP response message from the inner handler. + The HTTP request message to send to the server. + A cancellation token to cancel operation. + + + Sends an HTTP request to the inner handler to send to the server as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The HTTP request message to send to the server. + A cancellation token to cancel operation. + + + A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type. + + + Initializes a new instance of the class with a specific collection of name/value pairs. + A collection of name/value pairs. + + + Creates an HTTP content stream for reading whose backing store is memory from the . + Returns . The HTTP content stream. + + + Serialize and write the provided name/value pairs in the constructor to an HTTP content stream. + The target stream. + Information about the transport (the channel binding token, for example). This parameter may be a null reference. + + + Serialize and write the provided name/value pairs in the constructor to an HTTP content stream as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The target stream. + Information about the transport (the channel binding token, for example). This parameter may be a null reference. + + + Determines whether the encoded name/value data has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the encoded name/value data. + + + Provides a base class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific handler. + The HTTP handler stack to use for sending requests. + + + Gets or sets the base address of Uniform Resource Identifier (URI) of the Internet resource used when sending requests. + Returns .The base address of Uniform Resource Identifier (URI) of the Internet resource used when sending requests. + + + Cancel all pending requests on this instance. + + + Gets the headers which should be sent with each request. + Returns .The headers which should be sent with each request. + + + Send a DELETE request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a DELETE request to the specified Uri. + Returns .The HTTP response message. + The request message was already sent by the instance. + + + Send a DELETE request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + + + Send a DELETE request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Send a GET request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Gets or sets the maximum number of bytes to buffer when reading the response content. + Returns .The maximum number of bytes to buffer when reading the response content. + The size specified is less than or equal to zero. + An operation has already been started on the current instance. + The current instance has been disposed. + + + Send a POST request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + This operation will not block. The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Gets or sets the number of milliseconds to wait before the request times out. + Returns .The number of milliseconds to wait before the request times out. + The timeout specified is less than or equal to zero and is not . + An operation has already been started on the current instance. + The current instance has been disposed. + + + A base class for HTTP handler implementations. + + + Creates an instance of a class. + + + Gets or sets a value that indicates whether the handler should follow redirection responses. + Returns .true if the if the handler should follow redirection responses; otherwise false. The default value is true. + + + Gets or sets the type of decompression method used by the handler for automatic decompression of the HTTP content response. + Returns .The automatic decompression method used by the handler. The default value is . + + + Gets or sets the cookie container used to store server cookies by the handler. + Returns .The cookie container used to store server cookies by the handler. + + + Gets or sets authentication information used by this handler. + Returns .The authentication credentials associated with the handler. The default is null. + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets or sets the maximum number of redirects that the handler follows. + Returns .The maximum number of redirection responses that the handler follows. The default value is 50. + + + Gets or sets the maximum request content buffer size used by the handler. + Returns .The maximum request content buffer size in bytes. The default value is 65,536 bytes. + + + Gets or sets a value that indicates whether the handler sends an Authorization header with the request. + Returns .true for the handler to send an HTTP Authorization header with requests after authentication has taken place; otherwise, false. The default is false. + + + Gets or sets proxy information used by the handler. + Returns .The proxy information used by the handler. The default value is null. + + + Creates an instance of based on the information provided in the . + Returns .The HTTP response message. + The HTTP request message. + A cancellation token to cancel the operation. + + + Creates an instance of based on the information provided in the as an operation that will not block. + Returns .The task object representing the asynchronous operation. + The HTTP request message. + A cancellation token to cancel the operation. + + + Gets a value that indicates whether the handler supports automatic response content decompression. + Returns .true if the if the handler supports automatic response content decompression; otherwise false. The default value is true. + + + Gets a value that indicates whether the handler supports proxy settings. + Returns .true if the if the handler supports proxy settings; otherwise false. The default value is true. + + + Gets a value that indicates whether the handler supports configuration settings for the and properties. + Returns .true if the if the handler supports configuration settings for the and properties; otherwise false. The default value is true. + + + Gets or sets a value that indicates whether the handler uses the property to store server cookies and uses these cookies when sending requests. + Returns .true if the if the handler supports uses the property to store server cookies and uses these cookies when sending requests; otherwise false. The default value is true. + + + Gets or sets a value that controls whether default credentials are sent with requests by the handler. + Returns .true if the default credentials are used; otherwise false. The default value is false. + + + Gets or sets a value that indicates whether the handler uses a proxy for requests. + Returns .true if the handler should use a proxy for requests; otherwise false. The default value is true. + + + Indicates if operations should be considered completed either as soon as a response is available, or after reading the entire response message including the content. + + + The operation should complete after reading the entire response including the content. + + + The operation should complete as soon as a response is available and headers are read. The content is not read yet. + + + A base class representing an HTTP entity body and content headers. + + + Initializes a new instance of the class. + + + Gets a stream representing the serialized HTTP content. + Returns .A stream representing the serialized HTTP content. + + + Write the HTTP content to a stream. + The target stream. + + + Write the HTTP content to a stream. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Write the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + + + Write the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Buffer the te HTTP content to a memory stream. + Returns . + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets the HTTP content headers as defined in RFC 2616. + Returns .The content headers as defined in RFC 2616. + + + Serialize the HTTP content to a memory buffer. + + + Serialize the HTTP content to a memory buffer. + The maximum size, in bytes, of the buffer to use. + + + Serialize the HTTP content to a memory buffer as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + + + Serialize the HTTP content to a memory buffer as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The maximum size, in bytes, of the buffer to use. + + + Return the HTTP content as byte array. + Returns .The HTTP content as byte array. + + + Return the HTTP content as string. + Returns .The HTTP content as a string. + + + Serialize the HTTP content to a stream. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Serialize the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Determines whether the HTTP content has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the HHTP content. + + + A base type for HTTP message handlers. + + + Initializes a new instance of the class. + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Send an HTTP message synchronously. + Returns .The HTTP response message. + The HTTP message to send. + The cancellation token to cancel operation. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + + + A helper class for retrieving and comparing standard HTTP methods. + + + Initializes a new instance of the class with a specific HTTP method. + The HTTP method. + + + Represents an HTTP DELETE protocol method. + Returns . + + + Returns . + + + Returns . + + + Represents an HTTP GET protocol method. + Returns . + + + Returns . + + + Represents an HTTP HEAD protocol method. The HEAD method is identical to GET except that the server only returns message-headers in the response, without a message-body. + Returns . + + + An HTTP method. + Returns .An HTTP method represented as a . + + + Returns . + + + Returns . + + + Represents an HTTP OPTIONS protocol method. + Returns . + + + Represents an HTTP POST protocol method that is used to post a new entity as an addition to a URI. + Returns . + + + Represents an HTTP PUT protocol method that is used to replace an entity identified by a URI. + Returns . + + + Returns a string that represents the current object. + Returns .A string representing the current object. + + + Represents an HTTP TRACE protocol method. + Returns . + + + A base class for exceptions thrown by the and classes. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific message that describes the current exception. + A message that describes the current exception. + + + Initializes a new instance of the class with a specific message that describes the current exception and an inner exception. + A message that describes the current exception. + The inner exception. + + + Represents a HTTP request message. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with an HTTP method and a request . + The HTTP method. + A string that represents the request . + + + Initializes a new instance of the class with an HTTP method and a request . + The HTTP method. + The to request. + + + Gets or sets the contents of the HTTP message. + Returns .The content of a message + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets the collection of HTTP request headers. + Returns .The collection of HTTP request headers. + + + Gets or sets the HTTP method used by the HTTP request message. + Returns .The HTTP method used by the request message. The default is the GET method. + + + Gets a set of properties for the HTTP request. + Returns . + + + Gets or sets the used for the HTTP request. + Returns .The used for the HTTP request. + + + Returns a string that represents the current object. + Returns .A string representation of the current object. + + + Gets or sets the HTTP message version. + Returns .The HTTP message version. The default is 1.1. + + + Represents a HTTP response message. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific . + The status code of the HTTP response. + + + Gets or sets the content of a HTTP response message. + Returns .The content of the HTTP response message. + + + Releases the unmanaged resources and disposes of unmanaged resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Throws an exception if the property for the HTTP response is false. + Returns .The HTTP response message if the call is successful. + + + Gets the collection of HTTP response headers. + Returns .The collection of HTTP response headers. + + + Gets a value that indicates if the HTTP response was successful. + Returns .A value that indicates if the HTTP response was successful. true if was in the range 200-299; otherwise false. + + + Gets or sets the reason phrase which typically is sent by servers together with the status code. + Returns .The reason phrase sent by the server. + + + Gets or sets the request message which led to this response message. + Returns .The request message which led to this response message. + + + Gets or sets the status code of the HTTP response. + Returns .The status code of the HTTP response. + + + Returns a string that represents the current object. + Returns .A string representation of the current object. + + + Gets or sets the HTTP message version. + Returns .The HTTP message version. The default is 1.1. + + + A base type for handlers which only do some small processing of request and/or response messages. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Provides a collection of objects that get serialized using the multipart/* content type specification. + + + + + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + Provides a container for content encoded using multipart/form-data MIME type. + + + + + + + + Provides HTTP content based on a stream. + + + + + Returns . + + + + + Returns . + + + Returns . + + + Provides HTTP content based on a string. + + + + + + Represents authentication information in Authorization, ProxyAuthorization, WWW-Authneticate, and Proxy-Authenticate header values. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Cache-Control header. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Content-Range header. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents an entity-tag header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Content Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + A collection of headers and their values as defined in RFC 2616. + + + + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a collection of header values. + + + + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Request Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Response Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a media-type as defined in the RFC 2616. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a content-type header value with an additional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a name/value pair. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a name/value pair with parameters. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a product header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a value which can either be a product or a comment. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a header value which can either be a date/time or an entity-tag value. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Range header. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a byte-range header value. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a header value which can either be a date/time or a timespan value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a string header value with an optional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a transfer-coding header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a transfer-coding header value with optional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of a Via header. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a warning value used by the Warning header. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net40/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/net45/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..d7703a7 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..8575dfa Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.dll new file mode 100644 index 0000000..de77fa6 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.xml new file mode 100644 index 0000000..8e0255e --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/System.Net.Http.xml @@ -0,0 +1,1581 @@ + + + + System.Net.Http + + + + Provides HTTP content based on a byte array. + + + Initializes a new instance of the class. + The content used to initialize the . + The parameter is null. + + + Initializes a new instance of the class. + The content used to initialize the . + The offset, in bytes, in the parameter used to initialize the . + The number of bytes in the starting from the parameter used to initialize the . + The parameter is null. + The parameter is less than zero.-or-The parameter is greater than the length of content specified by the parameter.-or-The parameter is less than zero.-or-The parameter is greater than the length of content specified by the parameter - minus the parameter. + + + Creates an HTTP content stream for reading whose backing store is memory from the . + Returns .The HTTP content stream. + + + Serialize and write the byte array provided in the constructor to an HTTP content stream. + The target stream. + Information about the transport(channel binding token, for example). This parameter may be null. + + + Serialize and write the byte array provided in the constructor to an HTTP content stream as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The target stream. + Information about the transport, like channel binding token. This parameter may be null. + + + Determines whether a byte array has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the byte array. + + + A base type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler. + + + Initializes a new instance of the class with a specific inner handler. + The inner handler which is responsible for processing the HTTP response messages. + + + Releases the unmanaged resources used by the , and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Sends an HTTP request to the inner handler to send to the server synchronously. + Returns . The HTTP response message from the inner handler. + The HTTP request message to send to the server. + A cancellation token to cancel operation. + + + Sends an HTTP request to the inner handler to send to the server as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The HTTP request message to send to the server. + A cancellation token to cancel operation. + + + A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type. + + + Initializes a new instance of the class with a specific collection of name/value pairs. + A collection of name/value pairs. + + + Creates an HTTP content stream for reading whose backing store is memory from the . + Returns . The HTTP content stream. + + + Serialize and write the provided name/value pairs in the constructor to an HTTP content stream. + The target stream. + Information about the transport (the channel binding token, for example). This parameter may be a null reference. + + + Serialize and write the provided name/value pairs in the constructor to an HTTP content stream as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The target stream. + Information about the transport (the channel binding token, for example). This parameter may be a null reference. + + + Determines whether the encoded name/value data has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the encoded name/value data. + + + Provides a base class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific handler. + The HTTP handler stack to use for sending requests. + + + Gets or sets the base address of Uniform Resource Identifier (URI) of the Internet resource used when sending requests. + Returns .The base address of Uniform Resource Identifier (URI) of the Internet resource used when sending requests. + + + Cancel all pending requests on this instance. + + + Gets the headers which should be sent with each request. + Returns .The headers which should be sent with each request. + + + Send a DELETE request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a DELETE request to the specified Uri. + Returns .The HTTP response message. + The request message was already sent by the instance. + + + Send a DELETE request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + + + Send a DELETE request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Send a GET request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Gets or sets the maximum number of bytes to buffer when reading the response content. + Returns .The maximum number of bytes to buffer when reading the response content. + The size specified is less than or equal to zero. + An operation has already been started on the current instance. + The current instance has been disposed. + + + Send a POST request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + This operation will not block. The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Gets or sets the number of milliseconds to wait before the request times out. + Returns .The number of milliseconds to wait before the request times out. + The timeout specified is less than or equal to zero and is not . + An operation has already been started on the current instance. + The current instance has been disposed. + + + A base class for HTTP handler implementations. + + + Creates an instance of a class. + + + Gets or sets a value that indicates whether the handler should follow redirection responses. + Returns .true if the if the handler should follow redirection responses; otherwise false. The default value is true. + + + Gets or sets the type of decompression method used by the handler for automatic decompression of the HTTP content response. + Returns .The automatic decompression method used by the handler. The default value is . + + + Gets or sets the cookie container used to store server cookies by the handler. + Returns .The cookie container used to store server cookies by the handler. + + + Gets or sets authentication information used by this handler. + Returns .The authentication credentials associated with the handler. The default is null. + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets or sets the maximum number of redirects that the handler follows. + Returns .The maximum number of redirection responses that the handler follows. The default value is 50. + + + Gets or sets the maximum request content buffer size used by the handler. + Returns .The maximum request content buffer size in bytes. The default value is 65,536 bytes. + + + Gets or sets a value that indicates whether the handler sends an Authorization header with the request. + Returns .true for the handler to send an HTTP Authorization header with requests after authentication has taken place; otherwise, false. The default is false. + + + Gets or sets proxy information used by the handler. + Returns .The proxy information used by the handler. The default value is null. + + + Creates an instance of based on the information provided in the . + Returns .The HTTP response message. + The HTTP request message. + A cancellation token to cancel the operation. + + + Creates an instance of based on the information provided in the as an operation that will not block. + Returns .The task object representing the asynchronous operation. + The HTTP request message. + A cancellation token to cancel the operation. + + + Gets a value that indicates whether the handler supports automatic response content decompression. + Returns .true if the if the handler supports automatic response content decompression; otherwise false. The default value is true. + + + Gets a value that indicates whether the handler supports proxy settings. + Returns .true if the if the handler supports proxy settings; otherwise false. The default value is true. + + + Gets a value that indicates whether the handler supports configuration settings for the and properties. + Returns .true if the if the handler supports configuration settings for the and properties; otherwise false. The default value is true. + + + Gets or sets a value that indicates whether the handler uses the property to store server cookies and uses these cookies when sending requests. + Returns .true if the if the handler supports uses the property to store server cookies and uses these cookies when sending requests; otherwise false. The default value is true. + + + Gets or sets a value that controls whether default credentials are sent with requests by the handler. + Returns .true if the default credentials are used; otherwise false. The default value is false. + + + Gets or sets a value that indicates whether the handler uses a proxy for requests. + Returns .true if the handler should use a proxy for requests; otherwise false. The default value is true. + + + Indicates if operations should be considered completed either as soon as a response is available, or after reading the entire response message including the content. + + + The operation should complete after reading the entire response including the content. + + + The operation should complete as soon as a response is available and headers are read. The content is not read yet. + + + A base class representing an HTTP entity body and content headers. + + + Initializes a new instance of the class. + + + Gets a stream representing the serialized HTTP content. + Returns .A stream representing the serialized HTTP content. + + + Write the HTTP content to a stream. + The target stream. + + + Write the HTTP content to a stream. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Write the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + + + Write the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Buffer the te HTTP content to a memory stream. + Returns . + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets the HTTP content headers as defined in RFC 2616. + Returns .The content headers as defined in RFC 2616. + + + Serialize the HTTP content to a memory buffer. + + + Serialize the HTTP content to a memory buffer. + The maximum size, in bytes, of the buffer to use. + + + Serialize the HTTP content to a memory buffer as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + + + Serialize the HTTP content to a memory buffer as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The maximum size, in bytes, of the buffer to use. + + + Return the HTTP content as byte array. + Returns .The HTTP content as byte array. + + + Return the HTTP content as string. + Returns .The HTTP content as a string. + + + Serialize the HTTP content to a stream. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Serialize the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Determines whether the HTTP content has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the HHTP content. + + + A base type for HTTP message handlers. + + + Initializes a new instance of the class. + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Send an HTTP message synchronously. + Returns .The HTTP response message. + The HTTP message to send. + The cancellation token to cancel operation. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + + + A helper class for retrieving and comparing standard HTTP methods. + + + Initializes a new instance of the class with a specific HTTP method. + The HTTP method. + + + Represents an HTTP DELETE protocol method. + Returns . + + + Returns . + + + Returns . + + + Represents an HTTP GET protocol method. + Returns . + + + Returns . + + + Represents an HTTP HEAD protocol method. The HEAD method is identical to GET except that the server only returns message-headers in the response, without a message-body. + Returns . + + + An HTTP method. + Returns .An HTTP method represented as a . + + + Returns . + + + Returns . + + + Represents an HTTP OPTIONS protocol method. + Returns . + + + Represents an HTTP POST protocol method that is used to post a new entity as an addition to a URI. + Returns . + + + Represents an HTTP PUT protocol method that is used to replace an entity identified by a URI. + Returns . + + + Returns a string that represents the current object. + Returns .A string representing the current object. + + + Represents an HTTP TRACE protocol method. + Returns . + + + A base class for exceptions thrown by the and classes. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific message that describes the current exception. + A message that describes the current exception. + + + Initializes a new instance of the class with a specific message that describes the current exception and an inner exception. + A message that describes the current exception. + The inner exception. + + + Represents a HTTP request message. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with an HTTP method and a request . + The HTTP method. + A string that represents the request . + + + Initializes a new instance of the class with an HTTP method and a request . + The HTTP method. + The to request. + + + Gets or sets the contents of the HTTP message. + Returns .The content of a message + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets the collection of HTTP request headers. + Returns .The collection of HTTP request headers. + + + Gets or sets the HTTP method used by the HTTP request message. + Returns .The HTTP method used by the request message. The default is the GET method. + + + Gets a set of properties for the HTTP request. + Returns . + + + Gets or sets the used for the HTTP request. + Returns .The used for the HTTP request. + + + Returns a string that represents the current object. + Returns .A string representation of the current object. + + + Gets or sets the HTTP message version. + Returns .The HTTP message version. The default is 1.1. + + + Represents a HTTP response message. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific . + The status code of the HTTP response. + + + Gets or sets the content of a HTTP response message. + Returns .The content of the HTTP response message. + + + Releases the unmanaged resources and disposes of unmanaged resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Throws an exception if the property for the HTTP response is false. + Returns .The HTTP response message if the call is successful. + + + Gets the collection of HTTP response headers. + Returns .The collection of HTTP response headers. + + + Gets a value that indicates if the HTTP response was successful. + Returns .A value that indicates if the HTTP response was successful. true if was in the range 200-299; otherwise false. + + + Gets or sets the reason phrase which typically is sent by servers together with the status code. + Returns .The reason phrase sent by the server. + + + Gets or sets the request message which led to this response message. + Returns .The request message which led to this response message. + + + Gets or sets the status code of the HTTP response. + Returns .The status code of the HTTP response. + + + Returns a string that represents the current object. + Returns .A string representation of the current object. + + + Gets or sets the HTTP message version. + Returns .The HTTP message version. The default is 1.1. + + + A base type for handlers which only do some small processing of request and/or response messages. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Provides a collection of objects that get serialized using the multipart/* content type specification. + + + + + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + Provides a container for content encoded using multipart/form-data MIME type. + + + + + + + + Provides HTTP content based on a stream. + + + + + Returns . + + + + + Returns . + + + Returns . + + + Provides HTTP content based on a string. + + + + + + Represents authentication information in Authorization, ProxyAuthorization, WWW-Authneticate, and Proxy-Authenticate header values. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Cache-Control header. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Content-Range header. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents an entity-tag header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Content Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + A collection of headers and their values as defined in RFC 2616. + + + + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a collection of header values. + + + + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Request Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Response Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a media-type as defined in the RFC 2616. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a content-type header value with an additional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a name/value pair. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a name/value pair with parameters. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a product header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a value which can either be a product or a comment. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a header value which can either be a date/time or an entity-tag value. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Range header. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a byte-range header value. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a header value which can either be a date/time or a timespan value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a string header value with an optional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a transfer-coding header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a transfer-coding header value with optional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of a Via header. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a warning value used by the Warning header. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net40+sl4+win8+wp71+wpa81/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..d7703a7 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8+wpa81/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/ensureRedirect.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/portable-net45+win8/ensureRedirect.xml new file mode 100644 index 0000000..e69de29 diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..d7703a7 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..8575dfa Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.dll new file mode 100644 index 0000000..de77fa6 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.xml new file mode 100644 index 0000000..8e0255e --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/sl4-windowsphone71/System.Net.Http.xml @@ -0,0 +1,1581 @@ + + + + System.Net.Http + + + + Provides HTTP content based on a byte array. + + + Initializes a new instance of the class. + The content used to initialize the . + The parameter is null. + + + Initializes a new instance of the class. + The content used to initialize the . + The offset, in bytes, in the parameter used to initialize the . + The number of bytes in the starting from the parameter used to initialize the . + The parameter is null. + The parameter is less than zero.-or-The parameter is greater than the length of content specified by the parameter.-or-The parameter is less than zero.-or-The parameter is greater than the length of content specified by the parameter - minus the parameter. + + + Creates an HTTP content stream for reading whose backing store is memory from the . + Returns .The HTTP content stream. + + + Serialize and write the byte array provided in the constructor to an HTTP content stream. + The target stream. + Information about the transport(channel binding token, for example). This parameter may be null. + + + Serialize and write the byte array provided in the constructor to an HTTP content stream as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The target stream. + Information about the transport, like channel binding token. This parameter may be null. + + + Determines whether a byte array has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the byte array. + + + A base type for HTTP handlers that delegate the processing of HTTP response messages to another handler, called the inner handler. + + + Initializes a new instance of the class with a specific inner handler. + The inner handler which is responsible for processing the HTTP response messages. + + + Releases the unmanaged resources used by the , and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Sends an HTTP request to the inner handler to send to the server synchronously. + Returns . The HTTP response message from the inner handler. + The HTTP request message to send to the server. + A cancellation token to cancel operation. + + + Sends an HTTP request to the inner handler to send to the server as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The HTTP request message to send to the server. + A cancellation token to cancel operation. + + + A container for name/value tuples encoded using application/x-www-form-urlencoded MIME type. + + + Initializes a new instance of the class with a specific collection of name/value pairs. + A collection of name/value pairs. + + + Creates an HTTP content stream for reading whose backing store is memory from the . + Returns . The HTTP content stream. + + + Serialize and write the provided name/value pairs in the constructor to an HTTP content stream. + The target stream. + Information about the transport (the channel binding token, for example). This parameter may be a null reference. + + + Serialize and write the provided name/value pairs in the constructor to an HTTP content stream as an asynchronous operation. + Returns . The task object representing the asynchronous operation. + The target stream. + Information about the transport (the channel binding token, for example). This parameter may be a null reference. + + + Determines whether the encoded name/value data has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the encoded name/value data. + + + Provides a base class for sending HTTP requests and receiving HTTP responses from a resource identified by a URI. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific handler. + The HTTP handler stack to use for sending requests. + + + Gets or sets the base address of Uniform Resource Identifier (URI) of the Internet resource used when sending requests. + Returns .The base address of Uniform Resource Identifier (URI) of the Internet resource used when sending requests. + + + Cancel all pending requests on this instance. + + + Gets the headers which should be sent with each request. + Returns .The headers which should be sent with each request. + + + Send a DELETE request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a DELETE request to the specified Uri. + Returns .The HTTP response message. + The request message was already sent by the instance. + + + Send a DELETE request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + + + Send a DELETE request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Send a GET request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Send a GET request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The request message was already sent by the instance. + + + Gets or sets the maximum number of bytes to buffer when reading the response content. + Returns .The maximum number of bytes to buffer when reading the response content. + The size specified is less than or equal to zero. + An operation has already been started on the current instance. + The current instance has been disposed. + + + Send a POST request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a POST request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri. + Returns .The HTTP response message. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send a PUT request to the specified Uri as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The Uri the request is sent to. + The HTTP request content sent to the server. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request synchronously. + Returns .The HTTP response message. + The HTTP request message to send. + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + This operation will not block. The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + When the operation should complete (as soon as a response is available or after reading the whole response content). + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + The request message was already sent by the instance. + + + Gets or sets the number of milliseconds to wait before the request times out. + Returns .The number of milliseconds to wait before the request times out. + The timeout specified is less than or equal to zero and is not . + An operation has already been started on the current instance. + The current instance has been disposed. + + + A base class for HTTP handler implementations. + + + Creates an instance of a class. + + + Gets or sets a value that indicates whether the handler should follow redirection responses. + Returns .true if the if the handler should follow redirection responses; otherwise false. The default value is true. + + + Gets or sets the type of decompression method used by the handler for automatic decompression of the HTTP content response. + Returns .The automatic decompression method used by the handler. The default value is . + + + Gets or sets the cookie container used to store server cookies by the handler. + Returns .The cookie container used to store server cookies by the handler. + + + Gets or sets authentication information used by this handler. + Returns .The authentication credentials associated with the handler. The default is null. + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets or sets the maximum number of redirects that the handler follows. + Returns .The maximum number of redirection responses that the handler follows. The default value is 50. + + + Gets or sets the maximum request content buffer size used by the handler. + Returns .The maximum request content buffer size in bytes. The default value is 65,536 bytes. + + + Gets or sets a value that indicates whether the handler sends an Authorization header with the request. + Returns .true for the handler to send an HTTP Authorization header with requests after authentication has taken place; otherwise, false. The default is false. + + + Gets or sets proxy information used by the handler. + Returns .The proxy information used by the handler. The default value is null. + + + Creates an instance of based on the information provided in the . + Returns .The HTTP response message. + The HTTP request message. + A cancellation token to cancel the operation. + + + Creates an instance of based on the information provided in the as an operation that will not block. + Returns .The task object representing the asynchronous operation. + The HTTP request message. + A cancellation token to cancel the operation. + + + Gets a value that indicates whether the handler supports automatic response content decompression. + Returns .true if the if the handler supports automatic response content decompression; otherwise false. The default value is true. + + + Gets a value that indicates whether the handler supports proxy settings. + Returns .true if the if the handler supports proxy settings; otherwise false. The default value is true. + + + Gets a value that indicates whether the handler supports configuration settings for the and properties. + Returns .true if the if the handler supports configuration settings for the and properties; otherwise false. The default value is true. + + + Gets or sets a value that indicates whether the handler uses the property to store server cookies and uses these cookies when sending requests. + Returns .true if the if the handler supports uses the property to store server cookies and uses these cookies when sending requests; otherwise false. The default value is true. + + + Gets or sets a value that controls whether default credentials are sent with requests by the handler. + Returns .true if the default credentials are used; otherwise false. The default value is false. + + + Gets or sets a value that indicates whether the handler uses a proxy for requests. + Returns .true if the handler should use a proxy for requests; otherwise false. The default value is true. + + + Indicates if operations should be considered completed either as soon as a response is available, or after reading the entire response message including the content. + + + The operation should complete after reading the entire response including the content. + + + The operation should complete as soon as a response is available and headers are read. The content is not read yet. + + + A base class representing an HTTP entity body and content headers. + + + Initializes a new instance of the class. + + + Gets a stream representing the serialized HTTP content. + Returns .A stream representing the serialized HTTP content. + + + Write the HTTP content to a stream. + The target stream. + + + Write the HTTP content to a stream. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Write the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + + + Write the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Buffer the te HTTP content to a memory stream. + Returns . + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets the HTTP content headers as defined in RFC 2616. + Returns .The content headers as defined in RFC 2616. + + + Serialize the HTTP content to a memory buffer. + + + Serialize the HTTP content to a memory buffer. + The maximum size, in bytes, of the buffer to use. + + + Serialize the HTTP content to a memory buffer as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + + + Serialize the HTTP content to a memory buffer as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The maximum size, in bytes, of the buffer to use. + + + Return the HTTP content as byte array. + Returns .The HTTP content as byte array. + + + Return the HTTP content as string. + Returns .The HTTP content as a string. + + + Serialize the HTTP content to a stream. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Serialize the HTTP content to a stream as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The target stream. + Information about the transport (channel binding token, for example). This parameter may be null. + + + Determines whether the HTTP content has a valid length in bytes. + Returns .true if is a valid length; otherwise, false. + The length in bytes of the HHTP content. + + + A base type for HTTP message handlers. + + + Initializes a new instance of the class. + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Send an HTTP message synchronously. + Returns .The HTTP response message. + The HTTP message to send. + The cancellation token to cancel operation. + + + Send an HTTP request as an asynchronous operation. + Returns .The task object representing the asynchronous operation. + The HTTP request message to send. + The cancellation token to cancel operation. + + + A helper class for retrieving and comparing standard HTTP methods. + + + Initializes a new instance of the class with a specific HTTP method. + The HTTP method. + + + Represents an HTTP DELETE protocol method. + Returns . + + + Returns . + + + Returns . + + + Represents an HTTP GET protocol method. + Returns . + + + Returns . + + + Represents an HTTP HEAD protocol method. The HEAD method is identical to GET except that the server only returns message-headers in the response, without a message-body. + Returns . + + + An HTTP method. + Returns .An HTTP method represented as a . + + + Returns . + + + Returns . + + + Represents an HTTP OPTIONS protocol method. + Returns . + + + Represents an HTTP POST protocol method that is used to post a new entity as an addition to a URI. + Returns . + + + Represents an HTTP PUT protocol method that is used to replace an entity identified by a URI. + Returns . + + + Returns a string that represents the current object. + Returns .A string representing the current object. + + + Represents an HTTP TRACE protocol method. + Returns . + + + A base class for exceptions thrown by the and classes. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific message that describes the current exception. + A message that describes the current exception. + + + Initializes a new instance of the class with a specific message that describes the current exception and an inner exception. + A message that describes the current exception. + The inner exception. + + + Represents a HTTP request message. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with an HTTP method and a request . + The HTTP method. + A string that represents the request . + + + Initializes a new instance of the class with an HTTP method and a request . + The HTTP method. + The to request. + + + Gets or sets the contents of the HTTP message. + Returns .The content of a message + + + Releases the unmanaged resources and disposes of the managed resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Gets the collection of HTTP request headers. + Returns .The collection of HTTP request headers. + + + Gets or sets the HTTP method used by the HTTP request message. + Returns .The HTTP method used by the request message. The default is the GET method. + + + Gets a set of properties for the HTTP request. + Returns . + + + Gets or sets the used for the HTTP request. + Returns .The used for the HTTP request. + + + Returns a string that represents the current object. + Returns .A string representation of the current object. + + + Gets or sets the HTTP message version. + Returns .The HTTP message version. The default is 1.1. + + + Represents a HTTP response message. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specific . + The status code of the HTTP response. + + + Gets or sets the content of a HTTP response message. + Returns .The content of the HTTP response message. + + + Releases the unmanaged resources and disposes of unmanaged resources used by the . + + + Releases the unmanaged resources used by the and optionally disposes of the managed resources. + true to release both managed and unmanaged resources; false to releases only unmanaged resources. + + + Throws an exception if the property for the HTTP response is false. + Returns .The HTTP response message if the call is successful. + + + Gets the collection of HTTP response headers. + Returns .The collection of HTTP response headers. + + + Gets a value that indicates if the HTTP response was successful. + Returns .A value that indicates if the HTTP response was successful. true if was in the range 200-299; otherwise false. + + + Gets or sets the reason phrase which typically is sent by servers together with the status code. + Returns .The reason phrase sent by the server. + + + Gets or sets the request message which led to this response message. + Returns .The request message which led to this response message. + + + Gets or sets the status code of the HTTP response. + Returns .The status code of the HTTP response. + + + Returns a string that represents the current object. + Returns .A string representation of the current object. + + + Gets or sets the HTTP message version. + Returns .The HTTP message version. The default is 1.1. + + + A base type for handlers which only do some small processing of request and/or response messages. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Provides a collection of objects that get serialized using the multipart/* content type specification. + + + + + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + Provides a container for content encoded using multipart/form-data MIME type. + + + + + + + + Provides HTTP content based on a stream. + + + + + Returns . + + + + + Returns . + + + Returns . + + + Provides HTTP content based on a string. + + + + + + Represents authentication information in Authorization, ProxyAuthorization, WWW-Authneticate, and Proxy-Authenticate header values. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Cache-Control header. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Content-Range header. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents an entity-tag header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Content Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + A collection of headers and their values as defined in RFC 2616. + + + + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a collection of header values. + + + + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Request Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the collection of Response Headers as defined in RFC 2616. + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a media-type as defined in the RFC 2616. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a content-type header value with an additional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a name/value pair. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a name/value pair with parameters. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a product header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a value which can either be a product or a comment. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a header value which can either be a date/time or an entity-tag value. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of the Range header. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a byte-range header value. + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a header value which can either be a date/time or a timespan value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a string header value with an optional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a transfer-coding header value. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a transfer-coding header value with optional quality. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents the value of a Via header. + + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Represents a warning value used by the Warning header. + + + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + Returns . + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..a0ada0f Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/win8/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Extensions.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Extensions.dll new file mode 100644 index 0000000..d7703a7 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Extensions.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Primitives.dll b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Primitives.dll new file mode 100644 index 0000000..4f391a3 Binary files /dev/null and b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Primitives.dll differ diff --git a/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Primitives.xml b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Primitives.xml new file mode 100644 index 0000000..d18e9b2 --- /dev/null +++ b/LiveXAMLApp/packages/Microsoft.Net.Http.2.2.29/lib/wpa81/System.Net.Http.Primitives.xml @@ -0,0 +1,8 @@ + + + + System.Net.Http.Primitives + + + + diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/WebSocket4Net.0.14.1.nupkg b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/WebSocket4Net.0.14.1.nupkg new file mode 100644 index 0000000..6850008 Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/WebSocket4Net.0.14.1.nupkg differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/Xamarin.iOS10/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/Xamarin.iOS10/WebSocket4Net.dll new file mode 100644 index 0000000..b4a7cc6 Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/Xamarin.iOS10/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/monoandroid23/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/monoandroid23/WebSocket4Net.dll new file mode 100644 index 0000000..7fe6b9b Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/monoandroid23/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/monotouch10/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/monotouch10/WebSocket4Net.dll new file mode 100644 index 0000000..87b9765 Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/monotouch10/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net20/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net20/WebSocket4Net.dll new file mode 100644 index 0000000..ffa97af Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net20/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net35/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net35/WebSocket4Net.dll new file mode 100644 index 0000000..1acc90e Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net35/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net40/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net40/WebSocket4Net.dll new file mode 100644 index 0000000..b695882 Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net40/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net45/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net45/WebSocket4Net.dll new file mode 100644 index 0000000..ac6cbce Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/net45/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl40/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl40/WebSocket4Net.dll new file mode 100644 index 0000000..9bf37bc Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl40/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl50-wp/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl50-wp/WebSocket4Net.dll new file mode 100644 index 0000000..4039cf3 Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl50-wp/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl50/WebSocket4Net.dll b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl50/WebSocket4Net.dll new file mode 100644 index 0000000..06f0e0e Binary files /dev/null and b/LiveXAMLApp/packages/WebSocket4Net.0.14.1/lib/sl50/WebSocket4Net.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Android.Support.v4.21.0.3.0/Xamarin.Android.Support.v4.21.0.3.0.nupkg b/LiveXAMLApp/packages/Xamarin.Android.Support.v4.21.0.3.0/Xamarin.Android.Support.v4.21.0.3.0.nupkg new file mode 100644 index 0000000..22deeea Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Android.Support.v4.21.0.3.0/Xamarin.Android.Support.v4.21.0.3.0.nupkg differ diff --git a/LiveXAMLApp/packages/Xamarin.Android.Support.v4.21.0.3.0/lib/MonoAndroid10/Xamarin.Android.Support.v4.dll b/LiveXAMLApp/packages/Xamarin.Android.Support.v4.21.0.3.0/lib/MonoAndroid10/Xamarin.Android.Support.v4.dll new file mode 100644 index 0000000..4df2ecf Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Android.Support.v4.21.0.3.0/lib/MonoAndroid10/Xamarin.Android.Support.v4.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/Xamarin.Forms.1.3.5.6335.nupkg b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/Xamarin.Forms.1.3.5.6335.nupkg new file mode 100644 index 0000000..51bf085 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/Xamarin.Forms.1.3.5.6335.nupkg differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Build.Tasks.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Build.Tasks.dll new file mode 100644 index 0000000..db329b1 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Build.Tasks.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.targets b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.targets new file mode 100644 index 0000000..ee03d00 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/build/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.targets @@ -0,0 +1,53 @@ + + + + + + + XamlG; + $(CompileDependsOn); + + + + + + + + + + _PreXamlG; + _CollectXamlFiles; + _CoreXamlG; + _PostXamlG + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/FormsViewGroup.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/FormsViewGroup.dll new file mode 100644 index 0000000..fa53953 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/FormsViewGroup.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Core.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Core.dll new file mode 100644 index 0000000..78dbe04 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Core.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Core.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Core.xml new file mode 100644 index 0000000..db18b55 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Core.xml @@ -0,0 +1,13626 @@ + + + Xamarin.Forms.Core + + + + Positions child elements at absolute positions. + + Application developers can control the placement of child elements by providing proportional coordinates, device coordinates, or a combination of both, depending on the values that are passed to method. When one of the proportional enumeration values is provided, the corresponding X, or Y arguments that range between 0.0 and 1.0 will always cause the child to be displayed completely on screen. That is, you do not need to subtract or add the height or width of a child in order to display it flush with the left, right, top, or bottom of the . For width, height, X, or Y values that are not specified proportionally, application developers use device-dependent units to locate and size the child element. + + The following example shows how to use an with proportional position arguments. + + The code sample below shows how to place two labels by specifying device-dependent units. + + + The following image shows the AbsoluteLayout demo from the FormsGallery sample. + + + + + + The class has the following XAML attached properties: + + + Attached Property + Value + + + AbsoluteLayout.LayoutBounds + + A comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + AbsoluteLayout.LayoutFlags + + + enumeration value names: All, None, HeightProportional, WidthProportional, SizeProportional, XProportional, YProportional, or PositionProportional. Application developers can combine any of these flags together by supplying a comma-separated list. + + + + Application developers can use XAML to lay out elements with the class. The example below places a blue inside an : + + + +]]> + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Initializes a new instance of the AbsoluteLayout class. + To be added. + + + A value that indicates that the width or height of the child should be sized to that childs native size. + + + Application developers can set the width or height of the property to on a visual element when adding to the layout to cause that element to be measured during the layout pass and sized appropriately. + + + + Gets the collection of child elements of the AbsoluteLayout. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the AbsoluteLayout class. + + + + A visual element. + Gets the layout bounds of . + The layout bounds of the object. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + A visual element. + Gets the layout flags that were specified when was added to an . + The layout flags of the object. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. + + + + Implements the attached property that represents the layout bounds of child elements. Bindable at run time with the string "LayoutBounds". See Remarks. + The interface for this property is defined by the and methods. + + + + The X coordinate of the region that contains the child elements and that is used to calulate proportional values. + The Y coordinate of the region that contains the child elements and that is used to calulate proportional values. + The width of the the region that contains the child elements and that is used to calulate proportional values. + The height of the region that contains the child elements and that is used to calulate proportional values. + Positions and sizes the children of an AbsoluteLayout. + + Application developers can override to change the default behavior of . When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + Implements the attached property that contains the values for child elements. + The interface for this property is defined by the and methods. + + + + The element that was added to the children. + Called when a child is added to the . + + Application developers can override to change the default behavior thata is triggered when a child is added. When doing so, it is recommended to call the base method and then add additional logic. + + + + The element that was removed from the children. + Called when a child is removed from the . + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then add additional logic. + + + + The available width for the AbsoluteLayout to use. + The available height for the AbsoluteLayout to use. + Called during the measure pass of a layout cycle to get the desired size of the AbsoluteLayout. + A which contains the desired size of the AbsoluteLayout. + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + The view to delimit by . + A rectangle that represents the desired size and shape of . + Sets the layout bounds of a view that will be used to size it when it is layed out. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. Application developers can call this method to update the layout of a view after it is added. + + + + The view on which to set the layout flags. + A that describes the how to interpret the layout bounds for . + Sets the layout flags of a view that will be used to interpret the layout bounds set on it when it is added to the layout. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. Application developers can call this method to update the layout flags of a view after it is added. + + + + The type of elements in the absolute layout. + List interface with overloads for adding elements to an absolute layout. + + + + The view to add. + The location at which to position the view. + Adds a view to the list at the specified location with automatic sizing. + + + + The view to add. + The bounds to layout the view with. + The flags to interpret bounds with. + Adds a view to the list with the specified bounds and flags. + + + + Flags used to modify how layout bounds are interpreted in an . + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Interpret all dimensions proportionally. + + + Interpret height property as proportional to layout height. + + + Disable all flags. + + + Equivalent to both XProportional | YProportional. + + + Equivalent to both WidthProportional | HeightProportional. + + + Interpret width property as proportional to layout width. + + + Interpret x property as proportional to the remaining space after width is accounted for. + + + Interpret y property as proportional to the remaining space after height is accounted for. + + + A visual control used to indicate that something is ongoing. + + This control gives a visual clue to the user that something is happening, without information about its progress. + + + + The class has the following XAML properties: + + + Property + Value + + + Color + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + IsRunning + + + or , to indicate whether the animation for is displayed. + + + + + The example below creates a red activity indicator that is animated to imply that an activity is ongoing: + ]]> + + + + + Initializes a new instance of the ActivityIndicator class. + + The following example shows the initialization of a running ActivityIndicator. + + + + + + + + Gets or sets the of the ActivityIndicator. This is a bindable property. + A used to display the ActivityIndicator. Default is . + + + + Identifies the Color bindable property. + + + + Gets or sets the value indicating if the ActivityIndicator is running. This is a bindable property. + A indicating if the ActivityIndicator is running. + + + + Identifies the Color bindable property. + + + + Encapsulates an animation, a collection of functions that modify properties over a user-perceptible time period. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Runs the animation with the supplied parameters. + To be added. + + + Returns a callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + A callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + To be added. + + + Returns an enumerator that can be used to iterate over the child objects of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds to the children of this object and sets the start and end times of to and , respectively. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters, and adds it to the children of this object. + To be added. + To be added. + + + Extension methods for . + To be added. + + + To be added. + To be added. + Stops the animation. + To be added. + If refers to an animation that belongs to this instance, then its tweener handlers are removed, the tweener is stopped, the animation is removed from this instance, and it is marked as finished. If refers to one of the kinetics that belong to this instance, then it and its ticker are removed. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the kinetic animation. + To be added. + + + To be added. + To be added. + Returns a Boolean value that indicates whether or not the animation that is specified by is running. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a function that performs a linear interpolation between and . + A function that performs a linear interpolation between and . Application developers can pass values between 0.0f and 1.0f to this function in order to recieve a value that is offset from or , depending on the value of , by the passed value times the distance between and . + If is , then the interpolation happens between and . + + + Class that represents a cross-platform mobile application. + To be added. + + + Initializes a new instance. + To be added. + + + Gets the current application. + To be added. + To be added. + + + Gets or sets the main page of the application. + To be added. + This property throws an exception if the application developer attempts to set it to . + + + Throws . + To be added. + + + Application developers override this method to perform actions when the application resumes from a sleeping state. + To be added. + + + Application developers override this method to perform actions when the application enters the sleeping state. + To be added. + + + Application developers override this method to perform actions when the application starts. + To be added. + + + Gets the dictionary of properties for this object. + To be added. + To be added. + + + Gets or sets the resource dictionary for this object. + To be added. + To be added. + + + Defines how an image is displayed. + + + + Scale the image to fill the view. Some parts may be clipped in order to fill the view. + + + + Scale the image to fit the view. Some parts may be left empty (letter boxing). + + + Scale the image so it exactly fill the view. Scaling may not be uniform in X and Y. + + + Contains arguments for the event that is raised when a back button is pressed. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the back button event has already been handled. + To be added. + To be added. + + + Base class for menu items. + To be added. + + + Intializes a new instance. + To be added. + + + Base class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize the generic class, instead of directly using . + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + To be added. + + + To be added. + Detaches from . Calls the method. + To be added. + + + The type of the objects with which this can be associated. + Base generic class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize this generic class, instead of directly using . + + + Creates a new instance. + + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + Provides a mechanism by which application developers can propagate changes that are made to data in one object to another, by enabling validation, type coercion, and an event system. . + + The class provides a data storage mechanism that enables the application developer to synchronize data between objects in response to changes, for example, between the View and View Model in the MVVM design pattern. All of the visual elements in the namespace inherit from class, so they can all be used to bind the data behind their user interface elements to View Models that are supplied by the application developer. + + To bind the data behind a property in a , typically a view, to a property in the View Model, application developers should do the following. + First, the developer creates a pair of properties on the view, one of which is a , and the other of which is a property of whatever type is required. In the code below, MockBindableObject stands in for what would typically be a user interface object in production code. Application developers should note the use of and to get and set the value on the bound property; The property of the desired type provides the interface that the target of the bound property will implement. + ( + // o => o.Foo, default (string) + // ); + + public string BoundName + { + get { return (string) GetValue (BoundNameProperty); } + set { SetValue (BoundNameProperty, value); } + } +} + ]]> + Second, the developer creates the implementation for the bound property in a class that implements the interface. In the MVVM design pattern, this is typically done by the View Model. Application developers should implement the interface on classes that they want to use as View Models. In the example below, app developers should take note of the idiomatic way that the Name property is implemented to, first, ensure that the property actually changed and return if it did not, and only then assign the value and call the method. Additionally, the Name property in the example below merely wraps the name field. In practice, the application developer may choose a different model in which to store application data. + + Third, and finally, the application developer binds an instance of a BindableObject to an instance that implements INotifyPropertyChanged. In the vocabulary of the MVVM design pattern, this is "binding an instance of the View to an instance of a View Model." Once this step is complete, changes in the data are propagated between the View and View Model in a way that is determined by the value of the enumeration, if any, that was passed during the binding step. + The code below, when included in a project that reference the classes above, creates an instance of both MockBindable and MockViewModel, performs some intitialization, sets the binding, and then demonstrates a one-way binding. The code below runs without throwing an exception. + + + + + + Initializes a new instance of the BindableObject class. + The class is abstract, and this constructor is protected. It is invoked by child constructors. + + + The object that contains the properties that will be targeted by the bound properties that belong to this . This parameter is optional. + Apply the bindings to this. + + If an object is passed for the argument, bindings are first unapplied from . This method removes any current bindings from the old context, and applies every binding to the current . Application developers could use this method to bind the UI from a new View to an existing ViewModel, while optionally removing the bindings from the old View. Application developers can omit the argument in order to leave the old bindings in place. + + + + Gets or sets object that contains the properties that will be targeted by the bound properties that belong to this . + An that contains the properties that will be targeted by the bound properties that belong to this . This is a bindable property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to apply a BindingContext and a Binding to a Label (inherits from BindableObject): + + + + + + + Raised whenever the property changes. + + + + Implements the bound property whose interface is provided by the property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to set a binding to the BindingContext: + + + + + + + The BindableProperty to clear. + Clears any value set by for . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindablePropertyKey that identifies the to clear. + Clears any value set by for the property that is identified by . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindableProperty for which to get the value. + Returns the value that is contained the BindableProperty. + The value that is contained the . + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + Override this method to execute an action when the BindingContext changes. + + + + The name of the property that changed. + Call this method from a child class to notify that a change happened on a property. + + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + + The name of the property that is changing. + Call this method from a child class to notify that a change is going to happen on a property. + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + Raised when a property has changed. + + + + Raised when a property is about to change. + + + + The BindableProperty from which to remove bindings. + Removes a previously set binding. + + This method succeeds even if is not bound. + + + + The BindableProperty on which to set a binding. + The binding to set. + Assigns a binding to a property. + + The following example shows how to set a binding to a property: + + + + + + + The object on which to set the inherited binding context. + The inherited context to set. + Sets the inherited context to a nested element. + + + + The BindableProperty on which to assign a value. + The value to set. + Sets the value of the specified property. + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + The BindablePropertyKey on which to assign a value. + The value to set. + Sets the value of the propertyKey. + + This method and are useful to implement BindableProperties with limited write access. The write access is limited to the scope of the BindablePropertyKey. + The following example shows how to declare a BindableProperty with "internal" write access. + + (w => w.My, default(string)); + public static readonly BindableProperty MyProperty = MyPropertyKey.BindableProperty; + + public string My { + get { return (string)GetValue (MyProperty); } + internal set { SetValue (MyPropertyKey, value); } + } +} + ]]> + + + + + Unapply all the bindings. + + This method removes all current bindings from the current context. + Changing a bound property requires that the binding count for a bound property must be 0. The method merely decrements the cound, and does not remove all bindings everywhere. + + + + Contains convenience extension methods for . + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + The for the binding. This parameter is optional. Default is . + An for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The source type. + The BindableObject. + The BindableProperty to bind to + An expression used to retrieve the source path. + The BindingMode for the binding. This parameter is optional. Default is . + An IValueConverter for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding from an expression. + + This extension method uses Expression instead of path to creates and sets bindings. Using Expressions is more refactoring friendly. + This following example illustrates the setting of a binding using the extension method. + + (Label.TextProperty, vm => vm.Name); +label.BindingContext = new PersonViewModel { + Name = "John Doe", + Company = "Xamarin" +}; +Debug.WriteLine (label.Text); //prints "John Doe" + ]]> + + + + + A BindableProperty is a backing store for properties allowing bindings on . + + The following example shows the creation of a BindableProperty as a backing store for a property. It shows also how to bind to that BindableProperty. + + (w => w.Foo, default(string)); + + public string Foo { + get { return (string)GetValue (FooProperty); } + set { SetValue (FooProperty, value); } + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MockBindable.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (bindable.Foo); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + To be added. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the type declaring the BindableProperty + + Unused + + + Gets the default BindingMode. + + + + + Gets the default value for the BindableProperty. + + + + + Gets the Func used as default value creator. + + + + + Gets a value indicating if the BindableProperty is created form a BindablePropertyKey. + + + + + Gets the property name. + + + + + Gets the type of the BindableProperty. + + + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + Strongly typed delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + The secret key to a BindableProperty, used to implement a BindableProperty with restricted write access. + + The following example shows the creation of a BindablePropertyKey. Write access is while read access is . + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the BindableProperty. + A BindableProperty used for read access. + + + + A single 1:1 immutable data binding. + This class is immutable. + + + Constructs and initializes a new instance of the class. + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + An object used as the source for this binding. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + Gets or sets the converter to be used for this binding ? + An IValueConverter, or . + + + + Gets or sets the parameter passed as argument to the converter. + An object, or . + + + + The type of the source of the binding. + An expression used to retrieve the binding path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + This is a convenient factory method to create a binding from an expression, instead of a property name. This api is more resilient to refactoring. + A newly created binding. + + The following example shows how to set a binding to a property : + + (vm => vm.Name)); +Debug.WriteLine (label.Text); //prints "John Doe". + ]]> + + + + + Gets or sets the path of the property + A string indicating the path to the property. + + + + Gets or sets the source of the binding. + An object used as the binding source. + If the Source is not null, the BindingContext is ignored, and the Source is used instead. This allows to set a source for a single Binding, and not for all the Bindings applied to the BindableObject. + + + An abstract class that provides a and a formatting option. + To be added. + + + To be added. + Stops synchronization on the . + To be added. + + + To be added. + To be added. + To be added. + Starts synchronization on the by using and . + To be added. + + + Gets or sets the mode for this binding. + To be added. + To be added. + + + Gets or sets the string format for this binding. + + A string specifying the format for the value of this binding. + + + + Used for providing a display format for the binding value or compositing the value with other + text. Implementors of decide how the string format is utilized, but + all support standard conventions. + + + allows for one argument for its singular value. + + + + A simple example showing compositing text and determining the display format for the value with a + + + + + + + + Throws an if the binding has been applied. + + Use this method in property setters as bindings can not be changed once applied. + + + + Class that represents a value comparison with the target of an arbitrary binding. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets the binding against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Used by XAML infrastructure. + To be added. + To be added. + + + The direction of changes propagation for bindings. + + The following examples shows some BindingMode use cases. + + (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 (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 (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" + ]]> + + + + + When used in Bindings, indicates that the Binding should use the . When used in BindableProperty declaration, defaults to BindingMode.OneWay. + + + 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. + + + 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. + + + Indicates that the binding should propagates changes from source (usually the View Model) to target (the BindableObject) in both directions. + + + Type converter that converts from source types to + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert to . + To be added. + To be added. + + + To be added. + To be added. + Converts to by using . + To be added. + To be added. + + + A bounds layout constraint used by s. + To be added. + + + To be added. + To be added. + Returns a object that contains the compiled version of and is relative to either or the views referred to in . + To be added. + To be added. + + + A that converts strings into s for use with s. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A used to draw a solid colored rectangle. + + BoxView is a useful stand-in for images or custom elements when doing initial prototyping. BoxView has a default size request of 40x40. If you need a different size, assign the and properties. + The class has the following XAML properties: + PropertyValueColorA color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + The example below creates a red with the default width and height. + ]]> + + The following example shows a basic use: + + + + + + + + + + Initializes a new instance of the BoxView class. + + + + Gets or sets the color which will fill the rectangle. This is a bindable property. + The color that is used to fill the rectangle. The default is . + + + + Identifies the Color bindable property. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + + + A button that reacts to touch events. + + + The following example shows a basic use: + + + + + + + + + Initializes a new instance of the Button class. + + + + Gets or sets a color that describes the border stroke color of the button. This is a bindable property. + The color that is used as the border stroke color; the default is . + This property has no effect if is set to 0. On Android this property will not have an effect unless is set to a non-default color. + + + Backing store for the BorderColor bindable property. + + + + Gets or sets the corner radius of the border. This is a bindable property. + The corner radius of the button border; the default is 5. + + + + Backing store for the BorderRadius bindable property. + + + + Gets or sets the width of the border. This is a bindable property. + The width of the button border; the default is 0. + Set this value to a non-zero value in order to have a visible border. + + + Backing store for the BorderWidth bindable property. + + + + Occurs when the Button is clicked. + The user may be able to raise the clicked event using accessibility or keyboard controls when the Button has focus. + + + Gets or sets the command to invoke when the button is activated. This is a bindable property. + A command to invoke when the butto is activated. The default value is . + This property is used to associate a command with an instance of a button. This property is most often set in the MVVM pattern to bind callbacks back into the ViewModel. is controlled by the Command if set. + + + Gets or sets the parameter to pass to the Command property. This is a bindable property. + A object to pass to the command property. The default value is . + + + + Backing store for the CommandParameter bindable property. + + + + Backing store for the Command bindable property. + + + + Gets or sets the Font for the Label text. This is a bindable property. + The value for the button. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the button text is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the button text belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets or sets the size of the font of the button text. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the optional image source to display next to the text in the Button. This is a bindable property. + To be added. + To be added. + + + Backing store for the Image bindable property. + + + + Overriden + + + + The name of the changed property. + Call this method from a child class to notify that a change happened on a property. + A Button triggers this by itself. An inheritor only need to call this for properties without BindableProperty as backend store. + + + Gets or sets the Text displayed as the content of the button. This is a bindable property. + The text displayed in the button. The default value is . + Changing the Text of a button will trigger a layout cycle. + + + Gets or sets the for the text of the button. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Sends a click event. + To be added. + + + A Page that users can swipe from side to side to display pages of content, like a gallery. + + The provides a navigation experience that will feel natural and familiar to Windows Phone users. By using , application developers can provide customized navigation on a per-platform basis. For example, an application developer could use a for Android and iOS, and use a on Windows Phone. + + The following XAML example, when properly included and referenced in a Xamarin.Forms project, creates a that displays three simple elements: + + + + + + + + + + + + + + + +]]> + + + The following C# example creates a that displays three simple elements: + pages = new List (0); +Color[] colors = { Color.Red, Color.Green, Color.Blue }; +foreach (Color c in colors) { + pages.Add (new ContentPage { Content = new StackLayout { + Children = { + new Label { Text = c.ToString () }, + new BoxView { + Color = c, + VerticalOptions = LayoutOptions.FillAndExpand + } + } + } + }); +} + +MainPage = new CarouselPage { + Children = { pages [0], + pages [1], + pages [2] } +}; +]]> + + When embedding a CarouselPage into a , application developers should set to to prevent gesture conflicts between the CarouselPage and MasterDetailPage. + + + + + + + Initializes a new instance of the CarouselPage class. + + + + The object representing the model ofr the page. + Creates a default page, suitable for display in this, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Provides base class and capabilities for all Forms cells. Cells are elements meant to be added to or . + + The subtypes of are: + + + Type + Description + + + EntryCell + A with a label and a single line text entry field. + + + SwitchCell + A with a label and an on/off switch. + + + TextCell + A with primary and secondary text. + + + ImageCell + A that also includes an image. + + + ViewCell + A containing a developer-defined . + + + The various subclasses are shown in the following image: + + + + + + + The class has the following XAML properties: + + + Property + Value + + + ContextActions + + A list of objects to display when the user performs the context action. + + + + IsEnabled + + + or , indicating whether the animation for is displayed. + + + + + + + Initializes a new instance of the Cell class. + Cell class is abstract, this constructor is never invoked directly. + + + Occurs when the visual representation of the Cell is being added to the visual layout. + This method is raised before the cell is on screen. + + + Gets a list of menu items to display when the user performs the device-specific context gesture on the Cell. + The list of menu items that will be displayed when the user performs the device-specific context gesture on the Cell. + The context gesture on the iOS platform is a left swipe. For Android and Windows Phone operating systems, the context gesture is a press and hold. + + + Occurs when the visual representation of the Cell is being removed from the visual layout. + This method is for virtualization usage only. It is not gauranteed to fire for all visible Cells when the ListView or TableView is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Gets a value that indicates whether the cell has at least one menu item in its list property. + To be added. + To be added. + + + Gets or sets the height of the Cell. + A double that represents the height of the cell. + The property is ignored if the app developer sets the or property on the surrounding to . In that case, the or property is used instead. + + + Gets or sets the IsEnabled state of the Cell. This is a bindable property. + A bool. Default is . + + + + Identifies the IsEnabled bindable property. + + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Event that is raised when the binding context is changed. + To be added. + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Invoked whenever a long press is applied to the Cell. + + + + Invoked whenever the Cell is Tapped. + + + + Gets the height of the rendered cell on the device. + + + + + Occurs when the Cell is Tapped. + + + + To be added. + To be added. + To be added. + To be added. + Delegate for callback in . + To be added. + + + Class that represents a color and exposes it as RGBA and HSL values. + + This type is immutable. Colors can be expressed in the RGB or HSL modes. While the constructor takes R, G, B, and A values, the class also calculates and makes available HSL data for the color. + + In XAML, application developers can specify any property that is of type , for example, either as a XAML attribute or as a nested tag. The following code example shows how to specify the text color for a label by using an attribute: + + Hello, World! +]]> + The example below shows how to specify the text color for a label by using a nested tag: + + Hello, World! + Color.Blue +]]> + + Application developers can specify colors in XAML either as a hexadecimal number or as a valid color name. + When specifying a color with a hexadecimal number, app developers can use 3, 4, or 6 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". Finally, if the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". + When specifying a color with a string, app developers can use color name in isolation, or prefix it with "Color.". For example, both Purple and Color.Purple are valid ways to specify the color purple. The following table describes the valid color names that can be used to specify colors in XAML. +ColorShort NameRGB ValueColor.TransparentTransparent0, 0, 0 (With the alpha channel set to 0.)Color.AquaAqua0, 255, 255Color.BlackBlack0, 0, 0Color.BlueBlue0, 0, 255Color.FuchsiaFuchsia255, 0, 255Color.GrayGray128, 128, 128Color.GreenGreen0, 128, 0Color.LimeLime0, 255, 0Color.MaroonMaroon128, 0, 0Color.NavyNavy0, 0, 128Color.OliveOlive128, 128, 0Color.PurplePurple128, 0, 128Color.PinkPink255, 102, 255Color.RedRed255, 0, 0Color.SilverSilver192, 192, 192Color.TealTeal0, 128, 128Color.WhiteWhite255, 255, 255Color.YellowYellow255, 255, 0 + + + + The luminosity of the gray-scale color. + Initialize a new gray color. + This is equivalent to new Color (value, value, value). The value is clamped to [0-1]. App developers should use the equivalent methods, instead. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Initializes a new RGB color. + This is equivalent to new Color (r, g, b, 1). Values are clamped to [0-1]. Prefer the equivalent methods. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Initializes a new RGB color with an alpha channel. + Values are clamped to [0-1]. + + + Gets the alpha component of the color. + The Alpha component of the color as a double that is in the inclusive range [0-1]. + + + + Gets the accent or tint color from the application. + A Color. + The accent color is platform and device dependent. + + + The delta (positive or negative) to add to the luminosity channel. + Returns a new Color with a modified luminosity channel. + A new color with a possibly modified luminosity channel. + The parameter is added to the current luminosity, and the resulting luminosity is then clamped to the inclusive range [0,1]. + + + Aqua, the color that is represented by the RGB value #00ffff. + + + + Gets the blue component of the color. + The Blue component of the color as a double that is in the inclusive range [0-1]. + + + + Black, the color that is represented by the RGB value #000000. + + + + Blue, the color that is represented by the RGB value #0000ff. + + + + Returns the default color. + The default color. + The Default color is used to unset any Color, and revert to the default one. + + + The value to compare to this structure. + Determine if the provided is equivalent to the current Color. + + if the provided object is an equivalent Color. Otherwies, . + Overriden. + + + A string that contains the hexadecimal (A)RGB color representation. + Returns a new RGB Color instance with the requested Red, Green, and Blue channels. The Alpha channel is set if contains one. + A color. + + When specifying a color with a hexadecimal number, app developers can use 3, 4, 6, or 8 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". If the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". Finally, the developer can explicitly provide an 8-digit number that completely specifies the Alpha, Red, Green, and Blue channels, in that order. + Note that, in the paragraph above, the fully expanded color description is of the format, AARRGGBB. That is: the first pair of hexadecimal digits specifies the Alpha channel; the second pair specifies the Red channel; the third pair specifies the Green channel; and the final pair specifies the Blue channel. + + + + The Hue component of the color. + The Saturation component of the color. + The Luminosity component of the color. + The alpha value of the color. + Returns a new HSL Color with an alpha channel + An HSL color + + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + An RGB color + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + A new RGB color. + Component values are clamped to [0,255]. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b, a), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,255]. + + + A uint that represents the ARGB value of the color. + Returns a new Color with the requested RGBA value. + An RGBA color. + + The parameter must represent an unsigned integer that can be represented by hexadecimal string that matches the format "AARRGGBB". + + + + Fucshia, the color that is represented by the RGB value #ff00ff. + + + + Fucshia, the color that is represented by the RGB value #ff00ff. Deprecated. See Remarks. + Use the color, instead. + + + Gets the Green component of the color. + The Green component of the color as a double that is in the inclusive range [0-1]. + + + + Returns the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gray, the color that is represented by the RGB value #808080. + + + + Green, the color that is represented by the RGB value #008000. + + + + Gets the Hue of the color. + The Hue component of the color as a double that is in the inclusive range [0-1]. + + + + Lime, the color that is represented by the RGB value #00ff00. + + + + Gets the Luminosity fo the color. + The Luminosity component of the color as a double that is in the inclusive range [0-1]. + + + + Maroon, the color that is represented by the RGB value #800000. + + + + The alpha multiplicator. + Returns a new color with the alpha channel multiplied by alpha, clamped to the inclusive range [0-1]. + A new RGBA color with a possibly new value for its alpha channel. See Remarks. + The resulting color has its alpha channel clamped toto the inclusive range [0-1], preventing invalid colors. + + + Navy, the color that is represented by the RGB value #000080. + + + + Olive, the color that is represented by the RGB value #808000. + + + + To be added. + To be added. + Returns if represents the same color as . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same color as . + To be added. + To be added. + + + Pink, the color that is represented by the RGB value #ff66ff. + + + + Purple, the color that is represented by the RGB value #800080. + + + + Gets the Red component of the color. + The Red component of the color as a double that is in the inclusive range [0-1]. + + + + Red, the color that is represented by the RGB value #ff0000. + + + + Gets the Saturation of the color + The Saturation component of the color as a double that is in the inclusive range [0-1]. + + + + Silver, the color that is represented by the RGB value #c0c0c0. + + + + Teal, the color that is represented by the RGB value #008080. + + + + Returns a string representation of the Color. + A string. + Overriden. + + + The transparent color, represented by the RGB value #00000000. + The Alpha channel of the color is set to 0. + + + White, the color that is represented by the RGB value #ffffff. + + + + The modified Hue. + Returns a color with modified Hue, but keeping the same Saturation and Luminosity. + A color. + The Hue is clamped to the inclusive range [0,1]. This method is useful for creating color palettes. + + + The modified luminosity. + Returns a color with modified Luminosity. + A new HSL color. + The new Luminosity is clamped to [0,1]. This method is useful for creating color palettes. + + + The modified Saturation. + Returns a new color with modified Saturation. + A new HSLcolor. + The Saturation is clamped to [0,1]. This method is useful for creating color palettes. + + + Yellow, the color that is represented by the RGB value #ffff00.. + + + + A that converts from strings to a . + + The following example shows some variations of : + + + + + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + An that defines properties for a column in a . + + The class has the following XAML property: + + + Property + Value + + + Width + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute width. + + + + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Event that is raised when the size of the column is changed. + To be added. + + + Gets or sets the width of the column. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A for s. + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + + +]]> + + + + + Creates a new empty collection. + To be added. + + + Defines an implementation wrapping an . + + + The following example creates a new Command and set it to a button. + + + Debug.WriteLine ("Command executed")); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, +}; +]]> + + + More useful scenarios takes a parameter + + + Debug.WriteLine ("Command executed: {0}", o)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action<object> to execute when the Command is executed. + Initializes a new instance of the Command class. + The Action will be executed with a parameter. + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An Action<object> to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An used as parameter to determine if the Command can be executed. + Returns a indicating if the Command can be exectued with the given parameter. + + if the Command can be executed, otherwise. + + If no canExecute parameter was passed to the Command constructor, this method always returns . + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + Occurs when the target of the Command should reevaluate whether or not the Command can be executed. + + + + Send a + + + + An used as parameter for the execute Action. + Invokes the execute Action + + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + The Type of the parameter, + Defines an implementation wrapping a generic Action<T>. + + + The following example creates a new Command and set it to a button. + + + (s => Debug.WriteLine ("Command executed: {0}", s)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + + + + Base class for conditions. + To be added. + + + A layout constraint used by s. + To be added. + + + To be added. + Returns a object that constrains an element to . + To be added. + To be added. + + + To be added. + Returns a that is calculated from . + To be added. + To be added. + + + To be added. + Returns a object that constrains an element relative to its parent's size. + To be added. + To be added. + + + To be added. + To be added. + Returns a object that constrains an element relative to the parameter. + To be added. + To be added. + + + Defines a constraint relationship. + + The class has the following XAML properties: + + + Property + Value + + + Constant + + An optionally signed integer literal. + + + + ElementName + + The name of a source element against which to calculate the constraint. + + + + Factor + + A decimal literal in the range (0,1]. + + + + Property + + The name of the property on the source element to use in the constraint calculation. + + + + Type + + + Constant, RelativeToParent, or RelativeToView. + + + + + + + Creates a new with default values. + To be added. + + + Gets or sets the constant constraint value.. + To be added. + To be added. + + + Gets or sets the name of a source element against which to calculate the constraint. + To be added. + To be added. + + + Gets or sets the factor by which to scale a constrained dimension, relative to the source element. + To be added. + To be added. + + + Gets or sets name of the property on the source element to use in the constraint calculation. + To be added. + To be added. + + + To be added. + Returns a for this . + To be added. + To be added. + + + Gets or sets the constraint type. + To be added. + To be added. + + + Enumeration specifying whether a constraint is constant, relative to a view, or relative to its parent. + To be added. + + + A constant constraint. + + + A constraint that is relative to a parent element. + + + A constraint that is relative to a view. + + + A that converts from strings to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that displays a single view. + + This is a Page displaying a single View, often a container like a or . + + The example below is taken from he App.cs file that is contained in the default "Hello, Forms!" app. It uses a to display a label, which is a typical, though basic, use of the class. + + The FormsGallery sample, which can be found on the Sample Applications page, has a ContentPageDemoPage.cs file. This file contains a longer and more complicated example. + The class has the following XAML property: + + + + Property + Value + + + Content + + A list of objects that represent the visual content of the . This tag can be omitted, and the contents listed directly. + + + A ContentPage tag can be the root element of a XAML document. + + + + + + Initializes a new ContentPage instance. + + + + Gets or Sets the View element representing the content of the Page. + A subclass, or . + + + + Indicates the property of the type that is the (default) content property. + + XAML processor uses to determine the content property. + +Decorating types with ContentPropertyAttribute allows shorter XAML syntax. As + + has a ContentProperty attribute applied, this XAML is valid: + + +This is equivalent to the following, more explicit XAML + + + + + ]]> + + + + The name of the property. + Initializes a new instance of the ContentPropertyAttribute class. + + + + Gets the name of the content property + A string representing the name of the content property. + + + + An element that contains a single child element. + + The class has the following XAML property: + + + Property + Value + + + Content + + The object that represents the visual content of the . + + + + + The following example shows how to construct a new ContentView with a Label inside. + + + + + + + + + + + Initializes a new instance fo the ContentView class. + + + + Gets or sets the content of the ContentView. + A used as content. + + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + Positions and sizes the content of a ContentView. + + + + The available width for the ContentView to use + The available height for the ContentView to use. + This method is called during the measure pass of a layout cycle to get the desired size of the ContentView. + A which contains the desired size of the StackLayout. + The results of this method will be the desired size of its content. + + + A template for multiple bindings, commonly used by s, s, and s. + In XAML, application developers can nest markup inside a DataTemplate tag to create a whose members are bound to the properties of data objects that are contained in a list. + + + A custom content generator to be called + Creates and initializes a new instance of the class. + To be added. + + + To be added. + Creates a new for type . + To be added. + + + Gets a dictionary of bindings, indexed by the bound properties. + To be added. + To be added. + + + Loads the template for the type that is represented by this and sets all of the bindings and values. + To be added. + To be added. + + + To be added. + To be added. + Sets the binding for . + To be added. + + + To be added. + To be added. + Sets the value of . + To be added. + + + Returns a dictionary of property values for this , indexed by property. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + Gets or sets the parent element of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + + + + + + + + + Class that represents a binding condition and a list of objects that will be applied when the condition is met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Value + + The value of the property that will trigger the setters in Setters. + + + + Setters + + A list of setters that are called when the property condition is met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the binding whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the binding that is named by the property becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the binding, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + XAML infrastructure. + To be added. + To be added. + + + Event arguments for event. + To be added. + + + To be added. + To be added. + Creates a new object that represents a change from to . + To be added. + + + The date that the user entered. + To be added. + To be added. + + + The date that was on the element at the time that the user selected it. + To be added. + To be added. + + + A that allows date picking. + + The visual representation of a DatePicker is very similar to the one of , except that a special control for picking a date appears in place of a keyboard. + + + + The following example shows a basic use: + + + + The class has the following XAML properties: + + + Property + Value + + + Format + + A string that specifies the display format in the control of the chosen date. + + + + Date + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MinimumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MaximumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + + The example below creates a working that displays the current date and allows the user to select a date between the specified ranges. The value for the property is specified with the x:Static markup extension, and the and properties are specified by calling the method with the x:FactoryMethod and x:Arguments tags. The example below requires a namespace declaration in the root ContentPage or ContentView tags. In particular, xmlns:sys="clr-namespace:System;assembly=mscorlib" must appear in the attribute list for the root element, so that the XAML parser can resolve the name, sys:DateTime. + + + yyyy-MM-dd + + + + Jan 1 2000 + + + + + + + Dec 31 2050 + + + + + ]]> + + + + + Initializes a new instance of the DatePicker class. + + + + Gets or sets the displayed date. This is a bindable property. + The displayed in the DatePicker. + + + + Identifies the Date bindable property. + + + + An event fired when the Date property changes. + + + + The format of the date to display to the user. This is a dependency property. + A valid date format. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format dependency property. + + + + The highest date selectable for this DatePicker. This is a bindable property. + The maximum selectable for the DateEntry. Default December 31, 2100. + + + + Identifies the MaximumDate bindable property. + + + + The lowest date selectable for this DatePicker. This is a bindable property. + The minimum selectable for the DateEntry. Default January 1, 1900. + + + + Identifies the MinimumDate bindable property. + + + + To be added. + A collection parameterized by an . Base class for and . + + Objects of type are parameterized with a type of . + + + + + + + The to add. + Adds a to the collection. + To be added. + + + Removes all values from this . + To be added. + + + The to check for in this . + Returns a Boolean value that indicates whether or not this contains the specified . + To be added. + To be added. + + + To be added. + To be added. + Copies instances from this to an array, starting at the specified index. + To be added. + + + Gets the number of instances contained in this . + To be added. + To be added. + + + Returns an enumerator that iterates through the instances in this . + To be added. + To be added. + + + The instance to find. + Returns the index of the first occurrence of in this . + To be added. + To be added. + + + The position at which to insert . + The to insert. + Inserts a into this at the location that is specified by . + To be added. + + + + . instances can have items added to them and removed from them. + + + + To be added. + + + The location of the item to get or set. + Gets or sets the value indexed by . + To be added. + To be added. + + + Event that is raised when the display size of item in the collection changes. + To be added. + + + The to remove from this . + Removes a from this and returns if the item was removed. + + if was in this and was therefore removed. if was not in this . + To be added. + + + The location in this from which to remove an instance. + Removes an item from this . + To be added. + + + Gets an enumerator that can be used to iterate over the instances in this . + To be added. + To be added. + + + An attribute that indicates that the specified type provides a concrete implementation of a needed interface. + To be added. + + + To be added. + Creates a new with default values. + To be added. + + + Enumeration specifying whether should return a reference to a global or new instance. + + The following example shows how can be used to specify a new instance: + + (DependencyFetchTarget.NewInstance); + ]]> + + + + + Return a global instance. + + + Return a new instance. + + + Static class that provides the factory method for retrieving platform-specific implementations of the specified type T. + To be added. + + + To be added. + To be added. + Returns the platform-specific implementation of type T. + To be added. + To be added. + + + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + To be added. + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + An utility class to interract with the current Device/Platform. + + + + The Action to invoke + Invokes an Action on the device main (UI) thread. + + This example show how to set the Text of Label on the main thread, e.g. in response to an async event. + + + { + label.Text = "Async operation completed"; +}); + ]]> + + + + + To be added. + To be added. + Returns a double that represents the named size for the font that is used on the element on the native platform. + To be added. + To be added. + + + To be added. + To be added. + Returns a double that represents a font size that corresponds to on . + To be added. + To be added. + + + Gets the kind of device Forms is currently working on. + A representing the device type. + + + + (optional) The Action to execute on iOS. + (optional) The Action to execute on Android. + (optional) The Action to execute on WinPhone. + (optional) The Action to execute if no Action was provided for the current OS. + Executes different Actions depending on the Forms is working on. + + This example show how to change the font of a Label on a single OS. + + + label.Font = Font.OfSize ("HelveticaNeue-UltraLight", NamedSize.Large)); + ]]> + + + + + The type of the value to be returned. + The value for iOS. + The value for Android. + The value for WinPhone. + Returns different values depending on the Forms is working on. + The value for the current OS. + + This example show how to use different heights for a Button on different OS. + + + + + + + + The to open. + Request the device to open the Uri. + This often navigates out of the application. + + + Gets the indicating the OS Forms is working on. + A indicating the current OS. + + + + The interval between invocations of the callback. + The action to run when the timer elapses. + Starts a recurring timer using the device clock capabilities. + While the callback returns the timer will keep recurring. + + + Class that exposes device-specific styles as static fields. + To be added. + + + The device-specific body style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific caption style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for detail text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific subtitle style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific title style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + Functions that modify values non-linearly, generally used for animations. + + Easing functions are applied to input values in the range [0,1]. The cubic easing functions are often considered to look most natural. + If developers wish to use their own easing functions, they should return a value of 0 for an input of 0 and a value of 1 for an input of 1 or the animation will have a jump. + The predefined functions have the following forms: + + + Member + Graph + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To be added. + Creates a new object with the function. + To be added. + + + Jumps towards, and then bounces as it settles at the final value. (Note: Known bug in 1.0.0 release) + + NOTE: The 1.0.0. release of has a known bug and runs backwards. The following graph shows the desired behavior, shortly to be released: + + + + + + + Leaps to final values, bounces 3 times, and settles. + + + + + + + + Starts slowly and accelerates. + + + + + + + + Accelerates and decelerates. Often a natural-looking choice. + + + + + + + + Starts quickly and the decelerates. + + + + + + + + A value in the range [0,1] to which the easing function should be applied. + Applies the easing function to the specified value . + The value of the easing function when applied to the value . + To be added. + + + Linear transformation. + + + + + + + + An easing function. + Converts a function into an . + An for the . + + An easing function should return a value of (or near) 0 at 0 and 1 (or near) for 1. + + + + Smoothly accelerates. + + + + + + + + Accelerates in and out. + + + + . + + + Smoothly decelerates. + + + + + + + + Moves away and then leaps toward the final value. + + + + + + + + Overshoots and then returns. + + + + + + + + A control that can edit multiple lines of text. + + For single line entries, see . + + + + + + + Initializes a new instance of the Editor class. + + + The following example creates a Editor with a Chat keyboard that fills the available space. + + + + + The class has the following XAML propertY: + + + Property + Value + + + Text + + The initial text that will appear in the editor. + + + + + + + Event that is fired when editing has completed. + iOS (Unfocusing the editor or pressing "Done" triggers the event). Android / Windows Phone (Unfocusing the Editor triggers the event) + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is null. + Setting this property will cause the event to be emitted. + + + Occurs when the text of the Editor changes. + + + + Identifies the Test bindable property. + + + + Provides the base class for all Forms hierarchal elements. This class contains all the methods and properties required to represent an element in the Forms hierarchy. + + The following diagram shows the classes derived from . + + + + The diagram shows some important categories: + + + Class + Description + + + + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + + + + + Cells are elements meant to be added to or . + + + + + + A that occupies most or all of the screen and contains a single child. + + + + + + + have a single child of type , while subclasses of have a collection of multiple children views, including other layouts. + + + + Controls and specialized s + + The lower part of the diagram shows the Xamarin.Forms classes for universally-available controls, such as s and s. + + + + + + Protected constructor used to initialize a the element. + To be added. + + + Occurs whenever a child element is added to the element. + To be added. + + + Occurs whenever a child element is removed from the element. + To be added. + + + Gets or sets a value used to identify a collection of semantically similar elements. + A string that represents the collection the element belongs to. + Use the class id property to collect together elements into semantically similar groups for identification in ui testing and in theme engines. + + + Identifies the ClassId bindable property. + To be added. + + + Occurs whenever a child element is added to the elements subtree. + To be added. + + + Occurs whenever a child element is removed from the elements subtree. + To be added. + + + Gets a value that can be used to uniquely identify an element through the run of an application. + A Guid uniquely identifying the element. + This value is generated at runtime and is not stable across runs of your app. + + + Invoked whenever the binding context of the element changes. Implement this method to add class handling for this event. + Implementors must call the base method. + + + The element that was added. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + The element that was removed. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + Implementors must call the base method. + + + Gets or sets the parent element of the element. + The element which should be the parent of this element. + Most application authors will not need to set the parent element by hand. + + + Gets the element which is the closest ancestor of this element that is a . + The closest ansestor which is a . + Convenient way of accessing the nearest ancestor of an element which is actually represented on screen visually. If this element is a visual element, its bounds are relative to its ParentView. + + + The BindableProperty from which to remove the DynamicResource. + Removes a previously set dynamic resource + + + + The BindableProperty. + The key of the DynamicResource + Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key. + + + + Gets or sets a user defined value to uniquely identify the element. + A string uniquely identifying the element. + Use the StyleId property to identify individual elements in your application for identification in ui testing and in theme engines. + + + To be added. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + The identifier of the being sought. + Finds an object previously registered with . + The Object previously associated with by a call to . Raises a if this is not in an . + To be added. + + + To be added. + To be added. + Internal use only. + To be added. + + + Identifier to be used with the . + Object to be associated with the . + Within an , creates an association between and . + To be added. + + + The identifier to be removed. + Removes from an . + To be added. + + + Provides data for events pertaining to a single . + + + + + + + + The element relevant to the event. + Constructs and initializes a new instance of the class. + + + + Gets the element relevant to the event. + The element relevant to the event. + + + + A control that can edit a single line of text. + + Entry is a single line text entry. It is best used for collecting small discrete pieces of information, like usernames and passwords. + + + The following example creates a new username and password set of entries. + + + The FormsGallery sample, which can be found on the Sample Applications page, has an EntryDemoPage.cs file. This file contains a longer and more complicated example. + + The class has the following XAML properties: + + + Property + Value + + + IsPassword + + true to indicate that the is a password field. Otherwise, false. + + + Placeholder + The default text that will appear in the control. + + + Text + + The initial text that will appear in the entry. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + + + + Initializes a new instance of the Entry class. + + + + Occurs when the user finalizes the text in an entry with the return key. + This finilaization will usually but not always be accompanied by IsFocused being set to false. + + + Gets or sets a value that indicates if the entry should visually obscure typed text. This is a bindable property. + + if the element is a password box; otherwise, . Default value is . + Toggling this value does not reset the contents of the entry, therefore it is advisable to be careful about setting IsPassword to false, as it may contain sensitive information. + + + Identifies the IsPassword bindable property. + + + + Gets or sets the placeholder text shown when the entry is null or empty. This is a bindable property. + The placeholder text shown when is null or empty. The default value is . + + + + Identifies the Placeholder bindable property. + + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is . + Setting this property will cause the event to be emitted. + + + Event that is raised when the text in this element is changed. + To be added. + + + Gets or sets the for the text of the Entry. This is a bindable property. + The of the text. + + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + A with a label and a single line text entry field. + + The following example shows a basic use. + + + + The class has the following XAML properties: + + + Property + Value + + + Keyboard + A property name that indicates which keyboard to present to the user when editing text. + + + Label + + The text that is presented next to the entry area in the . + + + + LabelColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + The default text that will appear in the control when it is empty. + + + Text + + The initial text that will appear in the editor. + + + + XAlign + + + Center, End, or Start, to indicate the placement of the text that is entered by the user. + + + + + + + + + + Initializes a new instance of the EntryCell class. + + + + Event fired when the user presses 'Done' on the EntryCell's keyboard + + + + Gets or sets the Keyboard to display while editing the EntryCell. This is a bindable property. + A representing the keyboard kind. Default is . + + + + Identifies the Keyboard bindable property. + + + + Gets or sets the fixed text presented next to the Entry in the EntryCell. This is a bindable property. + A . + + + + Gets or sets the Color used for rendering the Label property. This is a bindable property. + Default is Color.Default. + + + + Identifies the LabelColor bindable property. + + + + Identifies the Label bindable property. + + + + Gets or sets the placeholder text displayed in the Entry when the Text is null or empty. This is a bindable property. + + + + + Identifies the Placeholder bindable property, + + + + Gets or sets the content of the Entry of the EntryCell. This is a bindable property. + + + + + Identifies the Text bindable property. + + + + Gets or sets the horizontal alignement of the Text property. This is a bindable property. + Default is . + + + + Identifies the XAlign bindable property. + + + + Class that represents a triggering event and a list of objects that will be invoked when the event is raised. + + The class has the following XAML property: + + + Property + Value + + + Event + + The name of the event to which to respond. + + + + Object name + + The qualified name of a implementation that has been defined by the application developer. This object is instantiated and its method is called when the triggering event is raised. Attributes on this tag set corresponding proptery values on the implementation before the method is called. + + + + + + Creates a new instance. + + + + Gets the list of objects that will be invoked when the event that is identified by the property is raised. + + + + + Gets or sets the name of the event that will cause the actions that are contained in the to be invoked. + + + + + Internal. + + + + Internal. + + + + An that reads an image from a file. + To be added. + + + Creates a new object with default values. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. + Overriden for FileImageSource. FileImageSource are not cancellable, so this will always returns a completed Task with as Result. + + + Gets or sets the file from which this will load an image. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed. + To be added. + + + To be added. + Allows implicit casting from a string. + To be added. + To be added. + + + To be added. + Allows implicit casting to a string. + To be added. + To be added. + + + Event args for 's and events. + + + + The who's focused was changed. + Whether or not the was focused. + Constructs and initializes a new instance of the class. + + + + Gets whether or not the was focused. + + if the view was focused, otherwise. + + + + Gets the who's focused was changed. + The who's focused was changed. + + + + The font used to display text. + The available fonts, and the matching between and real displayed fonts is device-dependent. + + + The desired font size. + Returns a font instance that represents the default bold font, in the requested size, for the device. + The requested bold . + + + + The desired font . + Returns an usable font instance representing the default bold font, in the requested NamedSize, for the device. + The requested bold . + + + + Gets the default font for the device. + The default font for the device. + To be added. + + + The value to compare this font to. + Determine if the provided is equivalent to the current Font. + + if the provided object is an equivalent font. otherwise. + Overriden. + + + Gets a value that indicates whether the font is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which this font belongs. + The font family to which this structure belongs. + To be added. + + + Gets the size of the font. + A that indicates the size of the font. + To be added. + + + Get the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gets the named font size, such as "Large" or "Small". + To be added. + To be added. + + + The name of the targeted system font. + The desired font size. + Returns a structure with the requested font and size. + A instance. + Font availability is platform- and device-dependent. + + + The name of the targeted system font. + The desired font . + Returns an usable , with the requested font and NamedSize. + A Font instance. + Font availability is platform and device dependent. + + + To be added. + To be added. + Returns if represents the same font that represents. Otherwise, . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same font that represents. Otherwise, . + To be added. + To be added. + + + The desired font size. + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested . + + + + The desired font . + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested bold . + + + + The requested font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + The requested named font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + Returns a string representation of this font structure. + A string representation of this structure. + The method returns a string that contains a labeled, comma-separated list of the , , , and properties. + + + Gets a value that indicates whether the target operating system should use size that is specified by the property. + To be added. + To be added. + + + Whether the font is italic, bold, or neither. + Returns a new font structure with the specified attributes. + A new structure with the attributes that were specified with . + To be added. + + + The requested font size. + Returns a new font structure with the size that was specified with . + To be added. + To be added. + + + The requested named font size. + A new structure with the size that was specified with . + To be added. + To be added. + + + Enumerates values that describe font styles. + To be added. + + + The font is bold. + + + The font is italic. + + + The font is unmodified. + + + Converts a string into a font size. + To be added. + + + Initializes a new object. + To be added. + + + To be added. + Returns a value that indicates if the source type can be converted to a font size. + To be added. + To be added. + + + To be added. + To be added. + Converts an object into a font size. + To be added. + To be added. + + + A that converts from strings to . + String should be formatted as "[name],[attributes],[size]" there may be multiple attributes, e.g. "Georgia, Bold, Italic, 42" + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Represents a text with attributes applied to some parts. + + + + Initializes a new instance of the FormattedString class. + To be added. + + + To be added. + Cast the FormattedString to a string, stripping all the attributes. + To be added. + To be added. + + + To be added. + Cast a string to a FromattedString that contains a single span with no attribute set. + To be added. + To be added. + + + Event that is raised when a bound property is changed. + To be added. + + + Gets the collection of spans. + To be added. + To be added. + + + Returns the text of the formatted string as an unformatted string. + To be added. + To be added. + + + An element containing a single child, with some framing options. + + Frame have a default of 20. + + The following example shows how to construct a new Frame with an Outline color. + + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasShadow + + + true or false, to indicate whether to show a shadow effect where the platform supports it. + + + + OutlineColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + Initializes a new instance of the Frame class. + A Frame has a default of 20. + + + Gets or sets a flag indicating if the Frame has a shadow displayed. This is a bindable property. + A indicating whether or not the Frame has a shadow. Default is . + + + + Identifies the HasShadow bindable property. + + + + Gets or sets the color of the border of the Frame. This is a bindable property. + A representing the border Color. Default is . + + + + Identifies the OutlineColor bindable property. + + + + The base class for all gesture recognizers. + + + + The parent element of the gesture recognizer. + An element from which the binding context will be inherited. + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying the various states of a gesture. + To be added. + + + The gesture has begun and has not ended, failed, or been cancelled. + + + The gesture was cancelled. + + + The gesture has ended. + + + The gesture was not recognized. + + + The gesture is in progress and may still become recognizable.. + + + The gesture state is being updated. + + + A layout that arranges views in rows and columns. + + + The following example shows a basic use: + + + The following shows Grids on the various platforms: + + + + It is convenient for the layout class arranges to store row and column indices of each of its child elements. Additionally, when a element is laid out with a grid, application developers can access and change the child's position and span from the child itself by using the , , , , static methods, and the equivalent static methods for columns and column spans. + The class has the following XAML properties. + + + Property + Value + + + Children + + Nested visual elements that are displayed in the Grid. + + + + ColumnDefinitions + + A list of ColumnDefinition specifications. See . + + + + ColumnSpacing + An integer. + + + RowDefinitions + + A list of RowDefinition specifications. See . + + + + RowSpacing + + An integer. + + + + The class has the following XAML attached properties. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + ColumnSpan + An integer that represents the number of Columns that the item will span. + + + Row + + An integer that represents the row in which the item will appear. + + + + RowSpan + + An integer that represents the number of rows that the item will span. + + + + The documentation for the following member methods contains XAML syntax examples: + + + + + Initializes a new instance of the Grid class. + + + + Gets the collection of child elements of the Grid. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the Grid class. + + + + Provides the interface for the bound property that gets or sets the ordered collection of objects that control the layout of columns in the . + A ColumnDefinitionCollection for the Grid instance. + + ColumnDefinitions is an ordered set of ColumnDefinition objects that determine the width of each column. Each successive ColumnDefintion controls the width of each successive column. If ColumnDefinitions is empty, or if there are more columns than definitions, then columns for which there is no definition are rendered as if they were controlled by a ColumnDefinition object that has its property set to . + The property has XAML syntax support. The syntax for this operation is shown below. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the zero-based column index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Provides the interface for the bound property that gets or sets the distance between columns in the Grid. + The space between columns in this layout. + + The property does not control spacing on the left and right edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of columns that a child element spans. See Remarks. + + The interface for this property is defined by the and methods. + + + + An element that belongs to the Grid layout. + Gets the column of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Column attached property. + + + + An element that belongs to the Grid layout. + Gets the column span of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the number of Columns that the item will span. + + + + The remarks for the method contain syntax for and information about the ColumnSpan attached property. + + + + An element that belongs to the Grid layout. + Gets the row of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Row attached property. + + + + An element that belongs to the Grid layout. + Gets the row span of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached properties: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + The remarks for the method contain syntax for and information about the RowSpan attached property. + + + + Invalidates the grid layout. + To be added. + + + X-coordinate of the top left corner of the bounding rectangle. + Y-coordinate of the top left corner of the bounding rectangle. + Width of the bounding rectangle. + Height of the bounding rectangle. + + Lays out the child elements when the layout is invalidated. + + To be added. + + + The element that was added. + Method that is called when a child is added to this element. + + + + The element that was removed. + Method that is called when a child is removed from this element. + To be added. + + + The requested width. + The requested height. + Method that is called when an attempt is made to resize this element. + + The new requested size. + + To be added. + + + Provides the interface for the bound property that gets or sets the collection of RowDefinition objects that control the heights of each row. + A RowDefinitionCollection for the Grid instance. + + RowDefinitions is an ordered set of objects that determine the height of each column. Each successive RowDefintion controls the width of each successive column. If RowDefinitions is empty, or if there are more rows than definitions, then rows for which there is no definition are rendered as if they were controlled by a RowDefinition object that has its property set to . + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + To be added. + + + Implements the attached property that represents the zero-based row index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Gets or sets the amount of space left between rows in the Grid. This is a bindable property. + The space between rows + + The property does not control spacing on the top and bottom edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of rows that a child element spans, and allows the class to bind it to properties on other objects at run time. + + The interface for this property is defined by the and methods. + + + + A child element of this Grid to move to a different column. + The column in which to place the child element. + Changes the column in which a child element will be placed. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the Column in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new column span. + The new column span. + Changes the column span of the specified child element. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the number of Columns that the item will span. + + + + + + + A child element of this Grid to move to a different row. + The row in which to place the child element. + Changes the row in which a child element will be placed. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new row span. + The new row span. + Changes the row span of the specified child element. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + + + + The type of elements in the grid. + List interface with overloads for adding elements to a grid. + + + + The view to add. + The column to add the view to. + The row to add the view to. + Adds a view to the List at the specified location with a RowSpan and HeightSpan of 1. + + + + The view to add. + The left edge of the column span. Must be greater than 0. + The right edge of the column span. Must be greater than left. + The top edge of the row span. Must be greater than 0. + The bottom edge of the row span. Must be greater than top. + Adds a view to the List at the specified row and column spans. + + + + The views to add. + Add a collection views to the List such that they are horizontally stacked to the right of the current contents of the Grid. + The final span of each view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is horizontally stacked to the right of the current contents of the Grid. + The final span of the view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The views to add. + Add a collection views to the List such that they are vertically stacked below the current contents of the Grid. + The final span of each view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is vertically stacked below the current contents of the Grid. + The final span of the view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + Used to define the size (width/height) of Grid ColumnDefinition and RowDefinition. + + GridLength of type GridUnitType.Absolute represents exact size. The ones of type GridUnitType.Auto adapts for fitting the size of the elements in the gird column/row. GridLenght of type GridUnitType.Star are used to split the available size in proportional buckets. + This valuetype is readonly. + + + + To be added. + Initializes a new Absolute GridLength. + This is striclty equivalent to new GridLength (value, GridUnitType.Absolute). + + + The size of the GridLength. + The GridUnitType (Auto, Star, Absolute) of the GridLength. + Initializes a new GridLength. + + + + A ready to reuse GridLength of GridUnitType.Auto. + + Value has no meaning for GridLength ot type GridUnitType.Auto. + + + A GridLength to compare to. + Test the equality of this GridLength and another one. + true is the GridLength are equal. False otherwise. + + + + Returns a value that is used for efficient storage of this object in collections. + To be added. + overriden. + + + Gets or sets the GridUnitType of the GridLength + The GridUnitType of the GridLength + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Absolute. + true if the GridUnitType of the GridLength is GridUnitType.Absolute + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Auto. + true if the GridUnitType of the GridLength is GridUnitType.Auto + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Star. + true if the GridUnitType of the GridLength is GridUnitType.Star + + + + The absolute size + Casting operator to convert a double into a GridLength of type GridUnitType.Absolute + A GridLength of type GridUnitType.Absolute and of size absolutesize + + + + Gets the Value of the GridLength. + The value in GridUnitType of the GridLength. + + + + A that converts from strings to s. + + The following example shows some uses of : + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Enumerates values that control how the property is interpreted for row and column definitions. + To be added. + + + Interpret the property value as the number of device-specific units. + To be added. + + + Ignore the property value and choose a size that fits the children of the row or column. + To be added. + + + Interpret the property value as a proportional weight, to be laid out after rows and columns with or are accounted for. + After all the rows and columns of type and are laid out, each of the corresponding remaining rows or columns, which are of type , receive a fraction of the remaining available space. This fraction is determined by dividing each row's or column's property value by the sum of all the row or column property values, correspondingly, including its own. + + + An abstract attribute whose subclasses specify the platform-specific renderers for Xamarin.Forms abstract controls. + To be added. + + + To be added. + To be added. + Creates a new object that maps events from to . + To be added. + + + Returns a Boolean value that indicates whether the runtime should automatically register the handler for the target. + To be added. + To be added. + + + A WebViewSource bound to an HTML-formatted string. + To be added. + + + Creates a new empty object with default values. + To be added. + + + The base URL for the source HTML document. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + The HTML content. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Defines an interface for elements that can be animated. + To be added. + + + Implement this method to begin a batch of animations that have been committed. + To be added. + + + Implement this method to commit a batch of animations so that they can be run with the method. + To be added. + + + Interface defining the type of and . + + Objects of type are parameterized with a type of . + + + + + + + Event that is raised when the size of the row or column changes. + To be added. + + + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + Sets a bound property value from a renderer without breaking the binding. + To be added. + + + The base interface all gesture recognizers must implement. + This interface is currently empty, this will likely change. + + + Interface indicating layout behavior and exposing the event. + To be added. + + + Event that is raised when the layout changes. + To be added. + + + + that holds an image. + + + The following example creates a new image from a file + + + + + The FormsGallery sample, which can be found on the Sample Applications page, has a ImageDemoPage.cs file. This file contains a longer and more complicated example. + + + + Initializes a new instance of the Image class. + + + The following example creates a new image from a file + + + + + + + + Gets or sets the scaling mode for the image. This is a bindable property. + A representing the scaling mode of the image. Default is . + + + + Identifies the Aspect bindable property. + + + + Gets the loading status of the image. This is a bindable property. + A indicating if the image is loadin. Default is false. + + + The following example illustrates running a to indicate that the image is loading: + + + + + + + Identifies the IsLoading bindable property. + This bindable property is readonly. + + + Gets or sets the opacity flag for the image. This is a bindable property. + A indicating the value for the property. Default is false. + If true, you'll be able to see through transparent parts of the image. + + + Identifies the IsOpaque bindable property. + + + + Invoked when the BindingContext changes. + Overriden for Image. + + + The name of the property. + Invoked when a property has changed. + Overriden for Image. + + + The name of the property. + Invoked when a property will change. + Overriden for Image. + + + The available width. + The available height. + Invoked when the layotu cycle request the element desired size. + + Overriden for Image. + + + Gets or sets the source of the image. This is a bindable property. + An representing the image source. Default is null. + + + + Identifies the Source bindable property. + + + + A that has an image. + + + objects are used to place images and accompanying text into a table. + + The following example shows a basic use. + + + + + + + + + Initializes a new instance of the ImageCell class. + + + + Gets or sets the ImageSource from which the Image is loaded. This is a bindable property. + + + + + Identifies the ImageSource bindable property. + + + + Overriden.. + + + + Abstract class whose implementors load images from files or the Web. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. The result of the Task indicates if the Task was successfully cancelled. + Calling Cancel() multiple times will throw an exception. + + + Gets the CancellationTokenSource. + + Used by inheritors to implement cancellable loads. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A string representing the id of the EmbeddedResource to load. + Creates an ImageSource for an EmbeddedResource included in the Assembly from which the call to FromResource is made. + A newly created ImageSource. + + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A bool indicating if the source was cancelled. + Called by inheritors to indicate the end of the loading of the source. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate the beginning of a loading operation. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate that the source changed.. + To be added. + + + To be added. + Allows implicit casting from a string that represents an absolute URI. + To be added. + To be added. + + + To be added. + Allows implicit casting from objects that were created with an absolute URI. + To be added. + To be added. + + + Gets or sets the element to which this object belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Interface abstracting platform-specific navigation. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + The page to add. + The existing page, before which will be inserted. + Inserts a page in the navigation stack before an existing page in the stack. + To be added. + + + Gets the modal navigation stack. + To be added. + To be added. + + + Gets the stack of pages in the navigation. + To be added. + To be added. + + + Asynchronously removes the most recent from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the most recent from the navigation stack, with optional animation. + To be added. + To be added. + + + Asynchronously dismisses the most recent modally presented . + An awaitable Task<Page>, indicating the PopModalAsync completion. The Task.Result is the Page that has been popped. + + The following example shows PushModal and PopModal usage: + + + + + Application developers must the result of and . Calling may cause a deadlock if a previous call to or has not completed. + + + + + To be added. + Asynchronously dismisses the most recent modally presented , with optional animation. + To be added. + To be added. + + + Pops all but the root off the navigation stack. + A task representing the asynchronous dismiss operation. + To be added. + + + To be added. + Pops all but the root off the navigation stack, with optional animation. + To be added. + To be added. + + + The to be pushed on top of the navigation stack. + Asynchronously adds a to the top of the navigation stack. + A task representing the asynchronous dismiss operation. + + + The following example shows and usage: + + + + + + + + To be added. + To be added. + Asynchronously adds a to the top of the navigation stack, with optional animation. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + + The following example shows PushModalAsync and PopModalAsync usage: + + + + + + + To be added. + To be added. + Presents a modally, with optional animation. + To be added. + To be added. + + + To be added. + Removes the specified page from the navigation stack. + To be added. + + + The base class of a view which can take keyboard input. + The constructor of this class is internal. Forms does not provide any renderer for InputView base class. + + + Gets or sets the Keyboard for the InputView. This is a bindable property. + The to use for the InputView. + + + + Identifies the Keyboard bindable property. + + + + To be added. + Interface defining a container for s and exposing a property. + To be added. + + + Gets the current page. + To be added. + To be added. + + + Interface defining the abstraction of a native platform. + To be added. + + + The binding context for the native platform. + To be added. + To be added. + + + Event that is raised when the binding context changes. + To be added. + + + The platform engine, useful for getting the screen size and for finding out if the paltform supports 3D. + To be added. + To be added. + + + Gets the root page of the platform. + To be added. + To be added. + + + To be added. + Sets the root page of the platform. + To be added. + + + Interface defining a native platform rendering engine. + To be added. + + + To be added. + To be added. + To be added. + Performs a size request on the native platform. + To be added. + To be added. + + + Gets a Boolean value that indicates whether the native platform supports 3D graphics. + To be added. + To be added. + + + Internally-used flagging interface indicating types that can be registered with . + To be added. + + + The type of visual that the items will be templated into. + A base class for a view that contains a templated list of items. + + + This class is used as a base class for views that wish to take in a list of user objects and produce views for each of them to be displayed, such as . The generic + argument is used to specify the type of visual that the view expects. In the case of , only subclasses are accepted, so that's + what it provides as its argument. + + + + + The user object + Creates a default instance for . + An instance of the class. + + This method is called by the templating system when is . + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + Gets or sets the source of items to template and display. + To be added. + + While any implementer is accepted, any that do not implement or + (where T is a class) will be converted to list by iterating. + If your collection implements , any changes raised from the event on this interface will be reflected in the items view. Note that if the event + is raised on another thread the main thread, the results will be unpredictable depending on the platform. To safely modify your collection (and raise the event) from another thread, call + to enable proper synchronization of access to the thread. + + + + Identifies the property. + + + + Gets or sets the to apply to the . + The for the , or + + The ItemTemplate is used to define the visual appearance of objects from the . Through + the item template you can set up data bindings to the user objects supplied to automatically fill in the visual and respond to any changes in the user + object. + If the item template is , is called and the result is used as the visual. + + In this example, a template for a is created for a simple user object. + + + + + + + + + Identifies the property. + + + + The visual content to setup. + The index of the content. + Performs any additional setup for the content at creation time. + + This method is called when the is creating visuals for user items. At this point, + the will have been set. You can override this method to perform additional setup + for content specific to your subclass. , for example, uses + this method to set to itself. + + + + To be added. + Creates a default TVisual by using + To be added. + To be added. + + + To be added. + To be added. + Configures . + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + To be added. + Creates a new object for the specified that was tapped and the to which it belongs. + To be added. + + + The collection of elements to which the tapped item belongs. + To be added. + To be added. + + + The visual element that the user tapped. + To be added. + To be added. + + + Event args when an items visiblity has been changed in a . + + + + The modified item. + Initializes a new instance of the ItemVisibilityEventArgs class with the item whose visibility has changed. + + + + The item from the whose visibility has changed. + An object. + + + + Interface defining methods for two-way value conversion between types. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert to by using and . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert back from by using and . + To be added. + To be added. + + + To be added. + The type of element that can be added to the container. + + + + The children collection of a visual element. + The collection containing the visual elements children. + + + + Contains methods that set values from renderers on bound properties without breaking the binding. + To be added. + + + Method that is called when the native size of a visual element changes. + To be added. + + + When implemented in a renderer, called to invalidate the layout when the native size of a visual element changes. + To be added. + + + Default keyboard and base class for specialized keyboards, such as those for telephone numbers, email, and URLs. + To be added. + + + Gets an instance of type "ChatKeyboard". + To be added. + To be added. + + + To be added. + Returns a new keyboard with the specified . + To be added. + To be added. + + + Gets an instance of type "Keyboard". + To be added. + To be added. + + + Gets an instance of type "EmailKeyboard". + To be added. + To be added. + + + Gets an instance of type "NumericKeyboard". + To be added. + To be added. + + + Gets an instance of type "TelephoneKeyboard". + To be added. + To be added. + + + Gets an instance of type "TextKeyboard". + To be added. + To be added. + + + Gets an instance of type "UrlKeyboard".. + To be added. + To be added. + + + Flagging enumeration for Keyboard options such as Capitalization, Spellcheck, and Suggestions. + To be added. + + + Capitalize the first words of sentences, and perform spellcheck and offer suggested word completions on text that the user enters. + + + Capitalize the first words of sentences. + + + Perform spellcheck on text that the user enters. + + + Offer suggested word completions on text that the user enters. + + + A that converts a string into a . + + The following XAML snippet illustrates a case where a KeyboardTypeConverter is used behind the scenes: + + + ]]> + + The following shows some examples of forms: + + { + {"Keyboard.Default", Keyboard.Default}, + {"Keyboard.Email", Keyboard.Email}, + {"Keyboard.Text", Keyboard.Text}, + {"Keyboard.Url", Keyboard.Url}, + {"Keyboard.Telephone", Keyboard.Telephone}, + {"Keyboard.Chat", Keyboard.Chat}, +}) +Assert.AreSame (kvp.Value, converter.ConvertFrom (kvp.Key)); + ]]> + + + + + Initializes a new instance of the KayboardTypeConverter class. + + + + The type of the object. + Returns wheher this converter can convert an object of the given type. + + if the KeyboardTypeConverter can convert from sourceType. otherwise. + This method only returns is sourceType is . + + + The Culture fo the value parameter. + The object to convert from. + TConvert the given value into a Keyboard. + A . + This will throw an IvalidOperationException if the conversion failed. + + + A that displays text. + + A Label is used to display single-line text elements as well as multi-line blocks of text. + + + + The following example, adapted from the default Xamarin Forms solution, shows a basic use: + + + The FormsGallery sample, which can be found on the Sample Applications page, has a LabelDemoPage.cs file. This file contains a longer and more complete example. + + The class has the following XAML properties: + + + Property + Value + + + Font + + Deprecated. Use FontAttributes, FontFamily, and FontSize, instead. A string of the format [name],[attributes],[size]. The font specification may contain multiple attributes, e.g. Georgia, Bold, Italic, 42. + + + + FontAttributes + + + Bold, Bold,Italic, or None. + + + + FontFamily + + A font family, such as sans-serif or monospace. + + + + FontSize + + A named size, such as Large, or an integer that represents the size in device units. + + + + + LineBreakMode + + A string that corresponds to a enumeration value. + + + + Text + + The text that will appear on the label. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + XAlign + + + Center, End, or Start, to indicate the horizontal placement of the label text. + + + + YAlign + + + Center, End, or Start, to indicate the vertical placement of the label text. + + + + + + + Initializes a new instance of the Label class. + + + + Gets or sets the Font for the Label. This is a bindable property. + The value for the Label. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the label is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the label belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets the size of the font for the label. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the formatted text for the Label. This is a bindable property. + The value to be displayed inside of the Label. This is a bindable property. + Setting FromattedText to a non-null value will set the Text property to null. + + + + Backing store for the FormattedText property. + To be added. + + + Gets or sets the LineBreakMode for the Label. This is a bindable property. + The value for the Label. The default is + + + + Backing store for the LineBreakMode bindable property. + + + + Gets or sets the text for the Label. This is a bindable property. + The value to be displayed inside of the Label. + Setting Text to a non-null value will set the FormattedText property to null. + + + + Gets or sets the for the text of this Label. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Gets or sets the horizontal alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is left-aligned. + + + + Backing store for the XAlign bindable property. + + + + Gets or sets the vertical alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is top-aligned. + + + + Backing store for the YAlign bindable property. + + + + + Provides the base class for all Layout elements. Use Layout elements to position and size child elements in Forms applications. + + + Subtypes of include , , and , as shown in the following diagram. + The property of contains a list of children of the parameterized type T, which must be a type of . Since is itself a subclass of , this allows s to hold sub-layouts, scrolling regions, etc. + + + + The class has the following XAML properties: + + + Property + Value + + + IsClippedToBounds + + + true or false, to indicate whether the layout is clipped to its bounding rectangle. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + + + + + + + Intitializes a new instance. + To be added. + + + Forces a layout cycle on the element and all of its descendants. + + Calling ForceLayout frequently can have negative impacts on performance. + + + + The available width that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the Layout. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + + + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of the app. Overriding GetSizeRequest should only be done if the developer wants to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + + + Invalidates the current layout. + Calling this method will invalidate the measure and triggers a new layout cycle. + + + Gets or sets a value which determines if the Layout should clip its children to its bounds. + + if the Layout is clipped; otherwise, . The default value is . + To be added. + + + Identifies the bindable property. + + + + Occurs at the end of a layout cycle if any of the child element's have changed. + + Developers wishing to implement animations may wish to begin them at the end of a LayoutChanged event. + + + + The child element to be positioned. + The bounding region in which the child should be positioned. + Positions a child element into a bounding region while respecting the child elements and . + This method is called in the layout cycle after the general regions for each child have been calculated. This method will handle positioning the element relative to the bounding region given if the bounding region given is larger than the child's desired size. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a Layout. + Implementors wishing to change the default behavior of a Layout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The view to lower in the visual stack. + Sends a child to the back of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which the children are enumerated. + + + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + To be added. + + + The child element whose preferred size changed. + The event data. + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + This method has a default implementation and and application developers must call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has a default implementation which triggers the layout cycle of the Layout to begin. + + + Gets or sets the inner padding of the Layout. + The Thickness values for the layout. The default value is a Thickness with all values set to 0. + + + The padding is the space between the bounds of a layout and the bounding region into which its children should be arranged into. + + + The following example shows setting the padding of a Layout to inset its children. + + + + + + + + Identifies the Padding bindable property. + + + + The view to raise in the visual stack. + Sends a child to the front of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which they are enumerated. + + + To be added. + When implemented, should return if should call , and to return if it should not. + To be added. + To be added. + + + To be added. + When implemented, should return if should call when it is removed, and to return if it should not. + To be added. + To be added. + + + Instructs the layout to relayout all of its children. + This method starts a new layout cycle for the layout. Invoking this method frequently can negatively impact performance. + + + The subclass of the layout contains. + A base implementation of a layout with undefined behavior and multiple children. + + + s contain that are of the type T with which the was specified. This T must be of type . Since s are subclasses of , this means that layouts may be nested, contain scrolling regions, etc. + + The following image shows the relationship between , , , and important subtypes. + + + + + The following example shows adding and removing elements from a layout. + + + layout, IEnumerable newItems) + { + layout.Children.Clear (); + foreach (var item in newItems) { + layout.Children.Add (item); + } + } + ]]> + + + + + Provides the base initialization for objects derived from the Layout<T> class. + + + + Gets an IList<View> of child element of the Layout. + A IList<View>. The default is an empty list. + + + The Children collection of a Layout contains all the children added throught the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a layout, setting a property, and adding the children in the object initializer. + + + + + + + + The view which was added. + Invoked when a child is added to the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + The view which was removed. + Invoked when a child is removed from the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + Values that represent LayoutAlignment. + To be added. + + + The center of an alignment. + + + The end of an alignment. Usually the Bottom or Right. + + + Fill the entire area if possible. + + + The start of an alignment. Usually the Top or Left. + + + A struct whose static members define various alignment and expansion options. + To be added. + + + An alignment value. + Whether or not an element will expand to fill available space in its parent. + Creates a new object with and . + To be added. + + + Gets or sets a value that indicates how an element will be aligned. + The flags that describe the behavior of an element. + To be added. + + + A structure that describes an element that is centered and does not expand. + To be added. + + + A structure that describes an element that is centered and expands. + To be added. + + + A structure that describes an element that appears at the end of its parent and does not expand. + To be added. + + + A object that describes an element that appears at the end of its parent and expands. + To be added. + + + Gets or sets a value that indicates whether or not the element that is described by this structure will occupy the largest space that its parent will give to it. + Whether or not the element that is described by this structure will occupy the largest space that its parent will give it. if the element will occupy the largest space the parent will give to it. if the element will be as compact as it can be. + To be added. + + + A stucture that describes an element that has no padding around itself and does not expand. + To be added. + + + A structure that describes an element that has no padding around itself and expands. + To be added. + + + A structure that describes an element that appears at the start of its parent and does not expand. + To be added. + + + A structure that describes an element that appears at the start of its parent and expands. + To be added. + + + Enumeration specifying various options for line breaking. + To be added. + + + Wrap at character boundaries. + + + Truncate the head of text. + + + Truncate the middle of text. This may be done, for example, by replacing it with an ellipsis. + + + Do not wrap text. + + + Truncate the tail of text. + + + Wrap at word boundaries. + + + An that displays a collection of data as a vertical list. + + + + + The following example shows a basic use: + + people = new List + { + new Person("Abigail", new DateTime(1975, 1, 15), Color.Aqua), + new Person("Bob", new DateTime(1976, 2, 20), Color.Black), + // ...etc.,... + new Person("Yvonne", new DateTime(1987, 1, 10), Color.Purple), + new Person("Zachary", new DateTime(1988, 2, 5), Color.Red) + }; + + // Create the ListView. + ListView listView = new ListView + { + // Source of data items. + ItemsSource = people, + + // Define template for displaying each item. + // (Argument of DataTemplate constructor is called for + // each item; it must return a Cell derivative.) + ItemTemplate = new DataTemplate(() => + { + // Create views with bindings for displaying each property. + Label nameLabel = new Label(); + nameLabel.SetBinding(Label.TextProperty, "Name"); + + Label birthdayLabel = new Label(); + birthdayLabel.SetBinding(Label.TextProperty, + new Binding("Birthday", BindingMode.OneWay, + null, null, "Born {0:d}")); + + BoxView boxView = new BoxView(); + boxView.SetBinding(BoxView.ColorProperty, "FavoriteColor"); + + // Return an assembled ViewCell. + return new ViewCell + { + View = new StackLayout + { + Padding = new Thickness(0, 5), + Orientation = StackOrientation.Horizontal, + Children = + { + boxView, + new StackLayout + { + VerticalOptions = LayoutOptions.Center, + Spacing = 0, + Children = + { + nameLabel, + birthdayLabel + } + } + } + } + }; + }) + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + listView + } + }; + } + } +} + +]]> + + The class has the following XAML properties: + + + Property + Value + + + + HasUnevenRows + + + true or false, to indicate whether the items in the list all have the same height. + + + + IsGroupingEnabled + + + true or false, to indicate whether grouping is enabled. + + + + RowHeight + + An integer that describes the height of the items in the list. This is ignored if HasUnevenRows is true. + + + + + + + + Creates and initializes a new instance of the class. + + + + The item to create a default visual for. + Creates an instance of the default visual representation of an item. + + A instance with its text set to the string representation of the object (). + + + + This method is called by the templating system when is . + + + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + + Gets or sets the binding to use for display the group header. + The instance to apply to grouped lists, or . + + + This binding can be used to simply set a the text of the group headers without defining a full template and uses the default visuals + of the platform to display it. The binding is applied to the of the group. + + + This property is mutually exclusive with property. Setting it will set + to . + + + + This example shows an alphabetized list of people, grouped by first initial with the display binding set. + + + { + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } + } + ]]> + + + + + Identifies the property. + + + + Gets or sets a for group headers. + The for group headers, or . + + + Use this property to define a template for a that will be used as the header for groups in this + . The will be the + for each group. + + + GroupHeaderTemplate is mutually exclusive with . Setting this property + will set to . + + Empty groups will still display a group header. + + + + + + + Identifies the property. + + + + Gets or sets a binding for the name to display in grouped jump lists. + The instance to apply to grouped lists, or . + + + When grouping items in a , it is often useful to have jump lists to jump to specific + sections in the list. For example, in an alphabetically grouped lists, the jump list would be the the letter of each group. + This binding is applied against the of each group to select the short name to display + in the jump list. + + + Note: On Android, there is no displayed jump list. + + + + This example shows an alphabetized list of people, grouped by first initial with the short name binding set. + + +{ + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } +} + ]]> + + + + + Identifies the property. + + + + Gets or sets a Boolean value that indicates whether this element has uneven rows. + + if this control has uneven rows. Otherwise, + + + When the property is , the property is ignored for each child element that has a value that is greater than 0, in which case that element's value is used, instead. If a child element's property is equal to 0, then the value is used for that element. + + Setting this property to does not enable automatic sizing of cells. iOS as a platform must have a size specified ahead of time and due to this restriction you must set . + + + + Identifies the property. + + + + Gets or sets whether or not grouping is enabled for . + + if grouping is enabled, otherwise and by default. + + + + + + + Identifies the property. + + + + Occurs when the visual representation of an item is being added to the visual layout. + This method is guaranteed to fire at some point before the element is on screen. + + + Occurs when the visual representation of an item is being removed from the visual layout. + This method is for virtualization usage only. It is not guaranteed to fire for all visible items when the List is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Event that is raised when a new item is selected. + To be added. + + + Event that is raised when an item is tapped. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made.. + To be added. + To be added. + + + Gets or sets a value that represents the height of a row. + To be added. + To be added. + + + The backing store for the property. + + + + The item from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the . + + A linear search is done for the item, so if the same reference appears multiple times in the list, the first item will be scrolled to. This includes if grouping is enabled. + + + contains an invalid value for . + + + The item from your to scroll to. + The group from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the in the + + A linear search is done for the item, so if the same reference appears multiple times in the , the first item will be scrolled to. The same item in a different group will be ignored. + + + contains an invalid value for . + + + is . + + + Gets or sets the currently selected item from the . + The selected item or if no item is selected. + + + + Identifies the property. + + + + To be added. + To be added. + Makes this element the of the . + To be added. + + + To be added. + Raises the event for . + To be added. + + + To be added. + Raises the event for . + To be added. + + + Enumerates values that control how detail content is displayed in a master-detail page. + To be added. + + + To be added. + + + Details pop over the page. + + + Details are always displayed in a split screen. + + + Details are displayed in a split screen when the device is in landscape orientation. + + + Details are displayed in a split screen when the device is in portrait orientation. + + + A that manages two panes of information: A master page that presents data at a high level, and a detail page that displays low-level details about information in the master. + + The following example code, taken from the FormsGallery sample application, creates a that allows the user to view detailed information about a color that she chooses from a list. Note that the NamedColorPage class, defined in as a sublcass of in another file in the sample application, simply displays RGB data, a with its background color set to the color that the user selected, and, finally, hue, saturation, and luminosity data. + The sample below illustrates three key concepts. First, the "Master" portion of the MasterDetailPage is represented by the property, which is set to a element in this example. This element contains a label and a list of colors. Second, the "Detail" portion of the is represented by the property, which, in this example, is set to the NamedColorPage that was noted above. Third, and finally, the page that is represented by the property is displayed by setting the property to ; That is, the property controls whether or not the page that is represented by the is presented to the user. + The page must have its property set. Additionally, the page will only display a navigation bar if it is an instance of . + + + { + this.IsPresented = true; + })); + } + + // Define a selected handler for the ListView. + listView.ItemSelected += (sender, args) => + { + // Set the BindingContext of the detail page. + this.Detail.BindingContext = args.SelectedItem; + + // Show the detail page. + this.IsPresented = false; + }; + + // Initialize the ListView selection. + listView.SelectedItem = namedColors[0]; + + + } + } +} + ]]> + + + The Windows Phone and Android platforms do not support sliding the detail screen in order to show or hide it. Use a to allow the user to show and hide the Detail screen on these platforms. On Windows Phone, consider using a user interface class that provides an experience that is more consistent with that platform, such as . + + + + + Creates a new empty . + To be added. + + + Gets or sets the detail page that is used to display details about items on the master page. + To be added. + To be added. + + + Gets or sets a value that turns on or off the gesture to reveal the master page. This is a bindable property. + + if gesture is enabled; otherwise . Default is . + Has no effect on Windows Phone. + + + Backing store for the IsGestureEnabled bindable property. + + + + Gets or sets a value that indicates whether or not the visual element that is represented by the property is presented to the user. + To be added. + Setting this property causes the event to be raised. + + + Event that is raised when the visual element that is represented by the property is presented or hidden. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Lays out the master and detail pages. + To be added. + + + Gets or sets the master page. + To be added. + To be added. + + + Gets or sets a value that indicates how detail content is displayed. + To be added. + To be added. + + + Backing store for the MasterBehavior property. + To be added. + + + Event that is raised when a detail appears. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Event that is raised when a detail disappears. + To be added. + + + Method that is called when the property of this is set. + To be added. + + + To be added. + To be added. + To be added. + + + Class that presents a menu item and associates it with a command. + + The class has the following XAML properties: + + + Property + Value + + + Command + + A binding to a command. + + + + CommandParameter + + A parameter to pass to the command. + + + + + IsDestructive + + + true or false, to indicate whether the command deletes an item in a list. + + + + Text + + The text to display on the menu item. + + + + + + + Intitializes a new instance. + To be added. + + + Event that is raised when the menu item is clicked. + To be added. + + + Gets or sets the command that is run when the menu is clicked. + To be added. + To be added. + + + Gets or sets the parameter that is passed to the command. + To be added. + To be added. + + + Identifies the command parameter bound property. + To be added. + + + Identifies the command bound property. + To be added. + + + Gets or sets the icon for the menu item. + To be added. + To be added. + + + Identfies the icon bound property. + To be added. + + + Gets or sets a value that indicates whether or not the menu item removes its associated UI element. + To be added. + To be added. + + + Identifies the IsDestructive bound property. + To be added. + + + When overriden by an app dev, implements behavior when the menu item is clicked. + To be added. + + + The text of the menu item. + To be added. + To be added. + + + Identifies the text bound property. + To be added. + + + Associates a callback on subscribers with a specific message name. + + The following shows a simple example of a strongly-typed callback using is: + + (subscriber, "IntPropertyMessage", (s, e) => { + subscriber.IntProperty = e; +}); + +//...later... + +MessagingCenter.Send(this, "IntPropertyMessage", 2); +Assert.AreEqual(2, subscriber.IntProperty); + ]]> + + + + + To be added. + To be added. + To be added. + Sends a named message that has no arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Sends a named message with the specified arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to parameterized messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterless subscriber messages. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterized subscriber messages. + To be added. + + + The particular subclass of that the MultiPage services. + A bindable, templatable base class for pages which contain multiple sub-pages. + + Provides a base implementation for binding and templating pages. + The class has the following XAML properties: + + + Property + Value + + + ItemsSource + + XAML extension markup that specifies a static collection of data objects. + + + + ItemTemplate + + XAML markup that describes a view that has bindings to properties on the members of the collection that is specified by ItemsSource. + + + + + + + Provides the base initialization for objects derived from the MultiPage<T> class. + + provides two classes that are derived from , and . + + + + Gets an IList<Page> of child elements of the MultiPage. + A IList<Page>. The default is an empty list. + + + The collection of a contains all the children added through the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a , which descends from . + + + + + + + + The object which the default page should be templated from. + Create default provides a default method of creating new pages from objects in a binding scenario. + The newly created page. + Most implementors will not need to use or override CreateDefault. + + + Gets or sets the currently selected page. + The current page. The default value is null. + The default page will usually get set when the multi-page is displayed or templated. + + + Raised when the property changes. + + + + The source for the items to be displayed. + To be added. + To be added. + + + Identifies the property. + To be added. + + + The template for displaying items. + To be added. + To be added. + + + Identifies the bindable property. + + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + The child that was added. + Called when a child has been added to the . + + + + Raises the event. + + + + To be added. + Called when the pages of the have been changed. + To be added. + + + The name of the property that was changed. + Called when a bindable property has changed. + + + + Raised when the children pages of the have changed. + To be added. + + + The currently selected item. + The selected item from the or if nothing selected. + + + + Identifies the bindable property. + + + + To be added. + To be added. + When overriden in a derived class, performs initialization of . + To be added. + + + To be added. + Sets the page that is specified by as the default page. + To be added. + To be added. + + + To be added. + To be added. + Performs initialization of . + To be added. + + + Class that represents a list of property and binding conditions, and a list of setters that are applied when all of the conditions in the list are met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Conditions + + A list of PropertyCondition and/or BindingCondition markup instances that specify the conditions that all must be met before all of the setters that are listed in Setters are applied. + + + + Setters + + A list of setters that are applied when all of the property conditions are met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets the list of conditions that must be satisfied in ordeer for the setters in the list to be invoked. + To be added. + To be added. + + + Gets the list of objects that will be applied when the list of conditions in the property are all met. + To be added. + To be added. + + + Represents pre-defined font sizes. + The exact pixel-value depends on the platform on which Forms runs. + + + The default font size. + + + A Large font size, for titles or other important text elements. + + + A default font size, to be used in stand alone labels or buttons. + + + The smallest readable font size for the device. Think about this like legal footnotes. + + + A small but readable font size. Use this for block of text. + + + Extension methods for and that add strongly-typed FindByName methods. + To be added. + + + To be added. + To be added. + To be added. + Returns the instance of type that has name in the scope that includes . + To be added. + To be added. + + + EventArgs for the NavigationPage's navigation events. + + + + + + + The page that was popped or is newly visible. + + + + + Gets the page that was removed or is newly visible. + + + For , this is the that was removed. For + and it is the newly visible page, the pushed page or the root respectively. + + + + A that manages the navigation and user-experience of a stack of other pages. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + Initializes a new object. + To be added. + + + To be added. + Creates a new element with as its root element. + To be added. + + + Identifies the property associated with the title of the back button. + To be added. + + + Gets or sets the background color for the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar background color. + To be added. + + + Gets or sets the text that appears on the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar text color. + To be added. + + + The that is currently top-most on the navigation stack. + To be added. + To be added. + + + Identifies the property. + + + + The whose back-button's title is being requested. + The title of the back button for the specified . + The title of the back button that would be shown if the specified were the . + To be added. + + + To be added. + Returns a value that indicates whether has a back button. + To be added. + To be added. + + + The being queried. + Returns a value that indicates whether the has a navigation bar. + + if would display a navigation bar were it the . + To be added. + + + The whose title icon is being set. + Retrieves the path to the file providing the title icon for the . + The path to the file providing the title icon for the . + To be added. + + + Backing store for the HasBackButton property. + To be added. + + + Backing store for the HasNavigationBar property. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Asynchronously removes the top from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the top from the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised after a page is popped from this element. + To be added. + + + Event that is raised when the last nonroot element is popped from this element. + To be added. + + + Pops all but the root off the navigation stack. + A task that represents the asynchronous dismiss operation. + To be added. + + + To be added. + A task for asynchronously popping all pages off of the navigation stack. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + To be added. + + + To be added. + To be added. + A task for asynchronously pushing a page onto the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised when a page is pushed onto this element. + To be added. + + + To be added. + To be added. + Sets the title that appears on the back button for . + To be added. + + + To be added. + To be added. + Adds or removes a back button to , with optional animation. + To be added. + + + To be added. + To be added. + Sets a value that indicates whether or not this element has a navigation bar. + To be added. + + + The whose title icon is being set. + The FileImageSource of the icon. + Sets the title icon of the to the icon file at . + + + + + + + + + + + The color to be used as the Tint of the . + To be added. + + Tint is especially important in iOS 7 and later, where the Tint is primary way to specify which controls on screen are active or have an action associated with them. + + + + Identifies the bindable property. + To be added. + + + Indicates the / property. + To be added. + + + To be added. + Provides idiom-specific implementation of T for the current TargetIdiom. + + + + Initializes a new instance of OnIdiom + + + + To be added. + Implicitly converts OnIdiom to T, depending on Device.Idiom. + The value of the Phone or Tablet property, depending on the current Device.Idiom. + + + + Gets or sets the value applied on Phone-like devices. + A T. + + + + Gets or sets the value applied on Tablet-like devices. + A T. + + + + To be added. + Provides the platform-specific implementation of T for the current . + To be added. + + + Creates a new instance of the type. + To be added. + + + The type as it is implemented on the Android platform. + To be added. + To be added. + + + The type as it is implemented on the iOS platform. + To be added. + To be added. + + + To be added. + Casts the type to the version that corresponds to the platform. + To be added. + To be added. + + + The type as it is implemented on the WinPhone platform. + To be added. + To be added. + + + A that displays OpenGL content. + + + s are easiest to program using Shared Projects, in which case the reference to OpenTK is straightforward. The following example shows a simple OpenGL app with a render loop: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + + toggle.Toggled += (s, a) => { + view.HasRenderLoop = toggle.IsToggled; + }; + button.Clicked += (s, a) => view.Display (); + + var stack = new StackLayout { + Padding = new Size (20, 20), + Children = {view, toggle, button} + }; + + Content = stack; + } + } +} + ]]> + + + + + + + + Creates a new object with default values. + To be added. + + + Called prior to rendering. + To be added. + + + Whether this has a custom rendering loop. + To be added. + To be added. + + + Identifies the bindable property. + To be added. + + + Overridden to create a custom rendering loop. + To be added. + + When overridden, creates a custom renderer: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + ]]> + + + + + A that occupies the entire screen. + + + is primarily a base class for more useful derived types. Objects that are derived from the see class are most prominently used as the top level UI element in Xamarin.Forms applications. Typically, application developers will provide such an object to the target platforms by returning it from a static method that the developer created in a project that references . The contents of a typical App.cs file that would appear in a project that reference are shown below: + + +using Xamarin.Forms; + +namespace MyFirstFormsApp +{ + public class App + { + public static Page GetMainPage() + { + return new ContentPage { + Content = new Label { + Text = "Hello, Forms!", + VerticalOptions = LayoutOptions.CenterAndExpand, + HorizontalOptions = LayoutOptions.CenterAndExpand, + } + }; + } + } +} + + While a object was returned in the example above, note that any class that extends could have been passed, instead. For example, by using conditional compilation or by checking the platform, the developr can pass a to Windows Phone applications, in order to better match the style of the user interface on that platform, while passing objects or other Page types to the other platforms. + The other projects in the solution that target the Windows Phone, iOS, and Android platforms can call the GetMainPage method to obtain the descendant that describes the portable user interface. This object can then be used with platform-specific static methods or extension methods to incorporate it into the native UI for each platform. + On all platforms, Application developers must call the method before they get or create any elements. + Each targeted platform uses the returned page in a different way. The Xamarin.Forms.Platform.iOS library provides Xamarin.Forms.Page.CreateViewController() extension method, which returns a UIViewController that application developers can assign to the UIWindow.RootViewController property of the top-level UI. This code is typically placed inside the UIApplicationDelegate.FinishedLaunching override for the main application class. A typical example is shown below: + + +using System; +using Xamarin.Forms; + +namespace MyFirstFormsApp.iOS +{ + [Register("AppDelegate")] + public partial class AppDelegate : UIApplicationDelegate + { + UIWindow window; + + public override bool FinishedLaunching(UIApplication app, + NSDictionary options) + { + Forms.Init(); + + window = new UIWindow(UIScreen.MainScreen.Bounds); + + window.RootViewController = App.GetMainPage().CreateViewController(); + window.MakeKeyAndVisible(); + + return true; + } + } +} + + + + The Xamarin.Forms.Platform.Android.AndroidActivity class provides the Xamarin.Forms.Platform.Android.AndroidActivity.SetPage method, which performs the work that is necessary to make its page argument the top-level UI element of the Xamarin.Forms.Platform.Android.AndroidActivity. A typical example is shown below: + + +using System; +using Android.App; +using Android.OS; +using Xamarin.Forms.Platform.Android; + + +namespace MyFirstFormsApp.Android +{ + [Activity(Label = "MyFirstFormsApp", MainLauncher = true)] + public class MainActivity : AndroidActivity + { + protected override void OnCreate(Bundle bundle) + { + base.OnCreate(bundle); + + Xamarin.Forms.Forms.Init(this, bundle); + + SetPage(App.GetMainPage()); + } + } +} + + + For Windows Phone, provides an extension method for that is called . This method returns a System.Windows.UIElement object that has the page that was passed to it as its current page. A typical example is shown below: + + +using System; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Navigation; +using Microsoft.Phone.Controls; +using Microsoft.Phone.Shell; + +using Xamarin.Forms; + + +namespace MyFirstFormsApp.WinPhone +{ + public partial class MainPage : PhoneApplicationPage + { + public MainPage() + { + InitializeComponent(); + + Forms.Init(); + Content = Phoneword.App.GetMainPage().ConvertPageToUIElement(this); + } + } +} + + In addition to their role as the main pages of applications, objects and their descendants can be used with navigation classes, such as or , among others, to provide rich user experiences that conform to the expected behaviors on each platform. + The class has the following XAML properties: + + + Property + Value + + + BackgroundImage + + A local file specification that identifies an image. + + + + Icon + + A local file specification that identifies an image. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + Title + + Text that represents the title of the page. + + + + ToolbarItems + + A list of ToolBarItem elements. + + + + + + + Creates a new element with default values. + To be added. + + + Indicates that the is about to appear. + To be added. + + + Identifies the image used as a background for the . + To be added. + To be added. + + + Identifies the property. + To be added. + + + Indicates that the is about to cease displaying. + To be added. + + + Title of the displayed action sheet. + Text to be displayed in the 'Cancel' button. + Text to be displayed in the 'Destruct' button. + Text labels for additional buttons. + Displays a native platform action sheet, allowing the application user to choose from several buttons. + An awaitable Task that displays an action sheet and returns the Text of the button pressed by the user. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with a single cancel button. + To be added. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Accept' button. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with an accept and a cancel button. + To be added. + To be added. + + + Forces the to perform a layout pass. + To be added. + + + Resource identifier for the 's associated icon. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Marks the Page as busy. This will cause the platform specific global activity indicator to show a busy state. + A bool indicating if the Page is busy or not. + Setting IsBusy to true on multiple pages at once will cause the global activity indicator to run until both are set back to false. It is the authors job to unset the IsBusy flag before cleaning up a Page. + + + Identifies the property. + To be added. + + + Raised when the layout of the has changed. + To be added. + + + Left-hand side of layout area. + Top of layout area. + Width of layout area. + Height of layout area. + Lays out children s into the specified area. + To be added. + + + When overridden, allows application developers to customize behavior immediately prior to the becoming visible. + To be added. + + + Application developers can override this method to provide behavior when the back button is pressed. + To be added. + To be added. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + + Overriders must call the base method. + + + + To be added. + To be added. + Indicates that the preferred size of a child has changed. + To be added. + + + When overridden, allows the application developer to customize behavior as the disappears. + To be added. + + + Called when the 's property has changed. + To be added. + + + The width allocated to the . + The height allocated to the . + Indicates that the has been assigned a size. + To be added. + + + The space between the content of the and it's border. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Calls . + To be added. + To be added. + + + The 's title. + To be added. + To be added. + + + Identifies the property. + To be added. + + + A set of s, implemented in a platform-specific manner. + To be added. + To be added. + + + Requests that the children s of the update their layouts. + To be added. + + + A control for picking an element in a list. + + The visual representation of a Picker is similar to a , but a picker control appears in place of a keyboard. + The following example shows the creation of a Picker. + + nameToColor = new Dictionary + { + { "Aqua", Color.Aqua }, { "Black", Color.Black }, + { "Blue", Color.Blue }, { "Fuschia", Color.Fuschia }, + { "Gray", Color.Gray }, { "Green", Color.Green }, + { "Lime", Color.Lime }, { "Maroon", Color.Maroon }, + { "Navy", Color.Navy }, { "Olive", Color.Olive }, + { "Purple", Color.Purple }, { "Red", Color.Red }, + { "Silver", Color.Silver }, { "Teal", Color.Teal }, + { "White", Color.White }, { "Yellow", Color.Yellow } + }; + + public PickerDemoPage() + { + Label header = new Label + { + Text = "Picker", + Font = Font.BoldSystemFontOfSize(50), + HorizontalOptions = LayoutOptions.Center + }; + + Picker picker = new Picker + { + Title = "Color", + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + foreach (string colorName in nameToColor.Keys) + { + picker.Items.Add(colorName); + } + + // Create BoxView for displaying picked Color + BoxView boxView = new BoxView + { + WidthRequest = 150, + HeightRequest = 150, + HorizontalOptions = LayoutOptions.Center, + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + picker.SelectedIndexChanged += (sender, args) => + { + if (picker.SelectedIndex == -1) + { + boxView.Color = Color.Default; + } + else + { + string colorName = picker.Items[picker.SelectedIndex]; + boxView.Color = nameToColor[colorName]; + } + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + picker, + boxView + } + }; + + } + } +} +]]> + + The class has the following XAML properties: + + + Property + Value + + + Items + + A local file specification that identifies an image. + + + + SelectedIndex + + An integer, from 0 to 1 less than the count of items that are listed in Items. Currently, this element must be specified in a tag that appears lexically below Items. + + + + Title + + Text that represents the title of the picker. + + + + + + + + + + Initializes a new instance of the Picker class. + + + + Gets the list of choices. + An IList<string> representing the Picker choices. + This property is read-only, but exposes the IList<> interface, so items can be added using Add(). + + + Gets or sets the index of the slected item of the picker. This is a bindable property. + An 0-based index representing the selected item in the list. Default is -1. + A value of -1 represents no item selected. + + + Raised when the value of the SelectIndex property has changed. + To be added. + + + Identifies the SelectedIndex bindable property. + + + + Gets or sets the title for the Picker. This is a bindable property. + A string. + Depending on the platform, the Title is shown as a placeholder, headline, or not showed at all. + + + Identifies the Title bindable property. + + + + Struct defining a 2-D point as a pair of doubles. + To be added. + + + + that specifies a that has the coordinates (, ). + Creates a new object that has coordinates that are specified by the width and height of , in that order. + To be added. + + + The horizontal coordinate. + The vertical coordinate. + Creates a new object that represents the point (,). + To be added. + + + The to which the distance is calculated. + Calculates the distance between two points. + The distance between this and the . + To be added. + + + Another . + Returns if the X and Y values of this are exactly equal to those in the argument. + + if the X and Y values are equal to those in . Returns if is not a . + + The and values of the are stored as s. Developers should be aware of the precision limits and issues that can arise when comparing floating-point values. In some circumstances, developers should consider the possibility of measuring approximate equality using the (considerably slower) method. + + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Whether both X and Y are 0. + + if both and are 0.0. + To be added. + + + The amount to add along the X axis. + The amount to add along the Y axis. + Returns a new that translates the current by and . + A new at [this.X + dx, this.Y + dy]. + To be added. + + + The to which is being added. + The values to add to . + Returns a new by adding a to a . + A new at [pt.X + sz.Width, pt.Y + sz.Height]. + To be added. + + + A to be compared. + A to be compared. + Whether the two s are equal. + + if the two s have equal values. + To be added. + + + The to be translated as a . + Returns a new whose and and equivalent to the 's and properties. + A new based on the . + To be added. + + + A to be compared. + A to be compared. + Whether two points are not equal. + + if and do not have equivalent X and Y values. + To be added. + + + The from which is to be subtracted. + The whose and will be subtracted from 's and . + Returns a new by subtracting a from a . + A new at [pt.X - sz.Width, pt.Y - sz.Height]. + To be added. + + + Returns a new whose and have been rounded to the nearest integral value. + A new whose and have been rounded to the nearest integral value, per the behavior of Math.Round(Double). + To be added. + + + A human-readable representation of the . + The string is formatted as "{{X={0} Y={1}}}". + To be added. + + + Location along the horizontal axis. + To be added. + To be added. + + + Location along the vertical axis. + To be added. + To be added. + + + The at {0,0}. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that displays progress. + + The following example shows the usage of a ProgressBar. + + + + + + + The class has the following XAML property: + + + Property + Value + + + Progress + + A decimal value between 0 and 1, inclusive, that specifies the fraction of the bar that is colored. + + + + + + + Initializes a new instance of the ProgressBar class + + + + Gets or sets the progress value. This is s bindable property. + Gets or sets a value that specifies the fraction of the bar that is colored. + Values less than 0 or larger than 1 will be clamped to the range [0-1]. + + + Identifies the Progress bindable property. + + + + To be added. + To be added. + To be added. + Animate the Progress property to value. + A Task<bool> you can await on. + + + + Event arguments for the delegate. + To be added. + + + To be added. + Creates a new object that indicates that is changing. + To be added. + + + Gets the name of the property that is changing. + The name of the property that is changing. + To be added. + + + To be added. + To be added. + Delegate for the event. + To be added. + + + Class that represents a value comparison with a property. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to check. + + + + Value + + The value for which the condition is met. + + + + + + + Initializes a new instance. + To be added. + + + Gets or sets the property against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Provides a value by using the supplied service provider. + To be added. + To be added. + + + Struct defining a rectangle, using doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + Where Xamarin.Forms supports XAML for structures, app devs can represent the rectangle as a comma-separated list of the X-coordinate, Y-Coordinate, Width, and Height. + + + + To be added. + To be added. + Creates a new object with its top left corner at with a height and width that are specified by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with its top left corner at (, ) and wide and tall. + To be added. + + + The bottom of the . + To be added. + + Modifying this value also modifies the property. + + + + The halfway between and , and . + To be added. + To be added. + + + The being checked for containment. + Whether the is within, or along the periphery, of this . + + if is within, or along the periphery, of this. + To be added. + + + The being checked for containment. + Whether is entirely within, or along the periphery, of this . + + if the borders of are entirely within, or along the periphery, of this. + To be added. + + + The X location of the point being checked. + The Y location of the point being checked. + Whether the point described by and is within, or along the periphery of, this . + + if the point described by and is within, or along the periphery of, this. + To be added. + + + An Object to compare to this. + Whether an is a and has exactly the same values as this. + + if is a that has exactly the same values as this. + To be added. + + + The being compared to this. + Whether a has exactly the same values as this. + + if has exactly the same values as this. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Factory method to create a from , , , and . + A new whose values are equal to the arguments. + To be added. + + + The hashcode for the . + A value optimized for fast insertion and retrieval in a hash-based data structure. + To be added. + + + Extent along the Y axis. + To be added. + + Modifying this value modifies the property.. + + + Values to inflate all the borders. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by 's and whose and are inflated by 's . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in each dimension by twice . + + + + + + + Value to shift to the left and to the right. + Value to shift upward and downward. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by and whose and are inflated by . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in X by twice and larger in Y by twice . + + + + + + + A this will be intersected with. + A new that is the intersection of this and . + Returns a new that is the intersection of this and , or if there is no intersection. + To be added. + + + A being intersected. + A being intersected. + A new that is the intersection of and . + Returns a new that is the intersection of and , or if there is no intersection. + To be added. + + + The being intersected. + Whether this intersects . + + if this intersects . + To be added. + + + Whether this has either or less than or equal to 0. + + if either or is less than or equal to 0. + To be added. + + + The position of the on the X axis. + To be added. + To be added. + + + The defined by and . + To be added. + To be added. + + + A whose X and Y values should be added to this's . + A new whose is offset by . + A new whose is equal to this's translated by . + To be added. + + + Change along the X axis. + Change along the Y axis. + A new whose is offset by and . + A new whose is equal to this's translated by and . + To be added. + + + A being compared. + A being compared. + Whether two s have equal values. + + if both the and of the two rectangles are equivalent. + To be added. + + + A being compared. + A being compared. + Whether two s have unequal values. + + if either the or of the two rectangles have differences. + To be added. + + + The furthest extent along the X axis. + To be added. + To be added. + + + Returns a new whose values have been rounded to their nearest integral value. + A new whose , , , and have been rounded to their nearest integral values. + + The rounding is applied to each property independently. + + + + The extent of the along its X and Y axes. + To be added. + To be added. + + + The top of the . + To be added. + To be added. + + + A human-readable description of the . + The format is "{X={0} Y={1} Width={2} Height={3}}". + To be added. + + + The whose union is being calculated. + A new whose bounds cover the union of this and . + Returns a new whose bounds cover the union of this and . + To be added. + + + A whose union is being calculated. + A whose union is being calculated. + A new whose bounds cover the union of and . + Returns a new whose bounds cover the union of and . + To be added. + + + The extent of this along the X axis. + To be added. + To be added. + + + The position of this on the X axis. + To be added. + To be added. + + + The position of this on the Y axis. + To be added. + To be added. + + + The at {0,0} whose Size is {0,0}. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that uses s to layout its children. + + The RelativeLayoutExample class in the following code extends the class by adding a that contains a heading and another label. Both labels are positioned relative to the : + + { + return 0; + })); + + relativeLayout.Children.Add (relativelyPositioned, + Constraint.RelativeToParent ((parent) => { + return parent.Width / 3; + }), + Constraint.RelativeToParent ((parent) => { + return parent.Height / 2; + })); + this.Content = relativeLayout; + } +} +]]> + + For a more complete example that exercises many more of the layout options for the class, see the FormsGallery sample that can be found on the Sample Applications page. + The class has the following XAML attached properties: + + + AttachedProperty + Value + + + XConstraint + + XAML markup extension for a constraint expression. See . + + + + YConstraint + + XAML markup extension for a constraint expression. See . + + + + WidthConstraint + + XAML markup extension for a constraint expression. See . + + + + HeightConstraint + + XAML markup extension for a constraint expression. See . + + + + + + + Creates a new with default values. + To be added. + + + Identifies the bindable property associated with /. + To be added. + + + List of s that are children of this . + To be added. + To be added. + + + The for which the bounds constraint is being requested. + Returns the bounds constraint of the . + The of the . + To be added. + + + The for which the height constraint is being requested. + Returns the height constraint of the . + The on the height of the . + To be added. + + + The for which the width constraint is being requested. + Returns the width constraint of the . + The on the width of the . + To be added. + + + The for which the X constraint is being requested. + Returns the X constraint of the . + The on the X position of the . + To be added. + + + The for which the Y constraint is being requested. + Returns the Y constraint of the . + The on the Y position of the . + To be added. + + + Identifies the bindable property associated with the / methods. + To be added. + + + The left-side bound of the rectangle into which the children will be laid out. + The top bound of the rectangle into which the children will be laid out. + The width of the rectangle into which the children will be laid out. + The height of the rectangle into which the children will be laid out. + Lays out the in the specified rectangle. + To be added. + + + The added to the . + Called when a is added to the collection. + To be added. + + + The removed from the collection. + Called when a is removed from the collection. + To be added. + + + To be added. + To be added. + Called when this has received a size request. + To be added. + To be added. + + + The to which the constraint will be applied. + The on the . + Sets as a constraint on the bounds of . + To be added. + + + Identifies the width constraint. + To be added. + + + Identifies the constraint on X. + To be added. + + + Identifies the constraint on Y. + To be added. + + + To be added. + An of s used by a . + To be added. + + + To be added. + To be added. + Constrains to and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains to the rectangle that is defined by , , , and , and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains by , , , and , and adds it to the layout. + To be added. + + + Associate view with renderer. + Lazily assoicate a view with it's renderer. + + + The view to render. + The view to render. + The view to render. + + + The renderer for this view. + The renderer for this view. + The renderer for this view. + + + An IDictionary that maps identifier strings to arbitrary resource objects. + To be added. + + + Creates a new empty object. + To be added. + + + To be added. + + Add an implicit Style to the ResourceDictionary. Implicit Styles are applied to all VisualElements matching TargetType in the descendants of this ResourceDictionary owner, unless a Style is explicitely applied to the Element. + + Implicit Styles are added to a ResourceDictionary in XAML by not specifying an x:Key for the Element. + + To be added. + + + The identifier to be used to retrieve the . + The associated with the . + Adds and to the as a key-value pair. + To be added. + + + Empties the . + To be added. + + + The identifier being searched for. + Whether the contains a key-value pair identified by . + To be added. + To be added. + + + The number of entries in the . + To be added. + To be added. + + + Returns a of the 's s. + To be added. + To be added. + + + The identifier of the desired object. + Retrieves the value associated with the key . + To be added. + To be added. + + + The collection of identifier s that are keys in the . + To be added. + To be added. + + + The identifier of the key-value pair to be removed. + Removes the key and value identified by from the . + + if the key existed and the removal was successful. + To be added. + + + To be added. + Adds an item to the collection. + To be added. + + + To be added. + Returns a value that indicates whether the dictionary contains the value in , indexed by the key in . + To be added. + To be added. + + + To be added. + To be added. + Copies the values in the dictionary to , starting at position in . + To be added. + + + Gets a value that indicates whether the resource dictionary is read-only. + To be added. + To be added. + + + To be added. + Removes the value in , indexed by the key in , from the dictionary, if present. + To be added. + To be added. + + + Returns a of the 's s. + An of the 's s. + To be added. + + + The identifier of the object to be retrieved. + An reference to the object being retrieved, or it's default value. + Retrieves the object specified by or, if not present, the default value of . + The object specified by or, if not present, the default value of . + To be added. + + + Retrieves the values of the . + To be added. + To be added. + + + An that defines properties for a row in a . + + The class has the following XAML property: + + + Property + Value + + + Height + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute height. + + + + + App developers can specify values for the property in XAML. This is typically done inside tags for the collection property. The following example demonstrates setting three row heights to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Gets or sets the height of the row. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the size of the row is changed. + To be added. + + + A for s. + To be added. + + + Creates a new empty object. + To be added. + + + Enumeration specifying vertical or horizontal scrolling directions. + To be added. + + + Scroll Horizontally. + + + Scroll vertically. + + + Enumerates values that describe a scroll request. + To be added. + + + Scroll to the center of a list. + + + Scroll to the end of a list. + + + Scroll to make a specified list item visible. + + + Scroll to the start of a list. + + + An element capable of scrolling if its Content requires. + + The following example shows the creation of a ScrollView with a large in it. + + + + Application developers should not nest one within another. Additinoally, they should refrain from nesting them other elements that can scroll, such as . + + + + The class has the following XAML properties: + + + Property + Value + + + Content + + Markup that specifies a to display in the . + + + + Orientation + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance of the ScrollView class. + + + + Gets or sets a to display in the . + The that is displayed. + + + + Gets the size of the Content. This is a bindable property. + A that represents the size of the content. + + + + Identifies the ContentSize bindable property. + This bindable property is read-only. + + + A value that represents the x coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + Positions and sizes the content of a ScrollView. + + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + + A which contains the desired size of the element. + + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the scrolling direction of the ScrollView. This is a bindable property. + + + + + Identifies the Orientation bindable property. + + + + A control that provides a search box. + + The following example shows a basic use. + + >(); + resultsLabel.Text = ""; + + // Get Xamarin.Forms assembly. + Assembly xamarinFormsAssembly = typeof(View).GetTypeInfo().Assembly; + + // Loop through all the types. + foreach (Type type in xamarinFormsAssembly.ExportedTypes) + { + TypeInfo typeInfo = type.GetTypeInfo(); + + // Public types only. + if (typeInfo.IsPublic) + { + // Loop through the properties. + foreach (PropertyInfo property in typeInfo.DeclaredProperties) + { + // Check for a match + if (property.Name.Equals(searchText)) + { + // Add it to the list. + list.Add(Tuple.Create(type, property.PropertyType)); + } + } + } + } + + if (list.Count == 0) + { + resultsLabel.Text = + String.Format("No Xamarin.Forms properties with " + + "the name of {0} were found", + searchText); + } + else + { + resultsLabel.Text = "The "; + + foreach (Tuple tuple in list) + { + resultsLabel.Text += + String.Format("{0} type defines a property named {1} of type {2}", + tuple.Item1.Name, searchText, tuple.Item2.Name); + + if (tuple != list.Last()) + { + resultsLabel.Text += "; and the "; + } + } + + resultsLabel.Text += "."; + } + } + } +}]]> + + + + + The class has the following XAML properties: + + + Property + Value + + + CancelButtonColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + + The default text that will appear in the search bar when it is empty. + + + + SearchCommand + + XAML markup extension that describes a binding to a command. + + + + SearchCommandParameter + + The parameter for the search command. + + + + Text + + The initial text that will appear in the search bar. + + + + + + + Creates a new . + To be added. + + + Gets or sets the color of the cancel button. + To be added. + To be added. + + + Backing store for the CancelButtonColor property. + To be added. + + + Gets or sets the text that is displayed when the is empty. + The text that is displayed when the is empty. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the user presses the Search button. + To be added. + + + Gets or sets the command that is run when the user presses Search button. + The command that is run when the user presses Search button. + To be added. + + + Gets or sets the parameter that is sent to the . + The parameter that is sent to the . + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets the text that is displayed in the . + The text that is displayed in the . + To be added. + + + Event that is raised when the property is changed. For example, this event is raised as the user edits the text in the SearchBar. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + Creates a new event that indicates that the user has selected . + To be added. + + + Gets the new selected item. + To be added. + To be added. + + + Represents an assignment of a property to a value, typically in a style or in response to a trigger. + + Setters are used with triggers and styles. + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to set. + + + + Value + + The value to apply to the property. + + + + + + + Creates a new object. + To be added. + + + The property on which to apply the assignment. + To be added. + + Only bindable properties can be set with a .. + + + The value to assign to the property. + To be added. + To be added. + + + To be added. + + + + To be added. + To be added. + + + Defines extensions methods for IList<Setter> + + + + + + To be added. + To be added. + To be added. + Add a Setter with a value to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a Binding to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a DynamicResource to the IList<Setter> + To be added. + + + Struct defining height and width as a pair of doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + + + + To be added. + To be added. + Creates a new object with and . + To be added. + + + The object to which this is being compared. + Whether this is equivalent to . + + if is a whose values are identical to this's and . + To be added. + + + The to which this is being compared. + Whether this is equivalent to . + + if 's values are identical to this's and . + To be added. + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Magnitude along the vertical axis, in platform-specific units. + To be added. + To be added. + + + Whether the has and of 0.0. + + if both and are 0.0. + To be added. + + + A to be added. + A to be added. + Returns a new whose and are the sum of the component's height and width. + A whose is equal to s1.Width + s2.Width and whose is equal to sz1.Height + sz2.Height. + To be added. + + + A to be compared. + A to be compared. + Whether two s have equal values. + + if and have equal values for and . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + The to be converted to a . + Returns a new based on a . + A whose and are equal to 's and , respectively. + To be added. + + + To be added. + To be added. + Whether two s have unequal values. + + if and have unequal values for either or . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + A to be scaled. + A factor by which to multiple 's and values. + Scales both and . + A new whose and have been scaled by . + To be added. + + + A from whose values a size will be subtracted. + The to subtract from . + Returns a new whose and are 's height and width minus the values in . + A whose is equal to s1.Width - s2.Width and whose is equal to sz1.Height - sz2.Height. + To be added. + + + Returns a human-readable representation of the . + The format has the pattern "{Width={0} Height={1}}". + To be added. + + + Magnitude along the horizontal axis, in platform-defined units. + To be added. + To be added. + + + The whose values for height and width are 0.0. + To be added. + + + Struct defining minimum and maximum s. + To be added. + + + To be added. + Creates a new object with default values. + To be added. + + + To be added. + To be added. + Creates a new object that requests at least the size , but preferably the size . + To be added. + + + The minimum acceptable size. + To be added. + To be added. + + + The requested size. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + A control that inputs a linear value. + + + + + The class has the following XAML properties: + + + Property + Value + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + + + + Initializes a new instance of the Slider class. + + The following example shows a basic use. + + + + + + + The minimum selectable value. + The maximum selectable value. + The actual value. + Initializes a new instance of the Slider class. + + + + Gets or sets the maximum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Maximum bindable property. + + + + Gets or sets the minimum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Minimum bindable property. + + + + Gets or sets the current value. This is a bindable property. + A double. + + + + The ValueChanged event is fired when the Value property changes. + + + + Identifies the Value bindable property. + + + + Represents a part of a FormattedString. + To be added. + + + Initialize a new instance of the Span class. + To be added. + + + Gets or sets the Color of the span background. + To be added. + Not supported on WindowsPhone. + + + Gets or sets the Font for the text in the span. + To be added. + To be added. + + + Gets a value that indicates whether the font for the span is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which the font for the text in the span belongs. + To be added. + To be added. + + + Gets the size of the font for the text in the span. + To be added. + To be added. + + + Gets or sets the Color for the text in the span. + To be added. + To be added. + + + Event that is raised when a property is changed. + To be added. + + + Gets or sets the text of the span. + To be added. + To be added. + + + A that positions child elements in a single line which can be oriented vertically or horizontally. + + Because layouts override the bounds on their child elements, application developers should not set bounds on them. + + The following example code, adapted from the FormsGallery example shows how to create a new with children that explore many of the layout behaviors of : + + + + + + The class has the following XAML properties: + + + Property + Value + + + Orientation + + + Horizontal or Vertical. The default is Vertical. + + + + Spacing + + An integer or decimal. + + + + + + + Initializes a new instance of the StackLayout class. + + + The following example shows the initialization of a new StackLayout and setting its orientation and children. + + + + + + + + To be added. + To be added. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a StackLayout. + Implementors wishing to change the default behavior of a StackLayout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The available width for the StackLayout to use. + The available height for the StackLayout to use. + This method is called during the measure pass of a layout cycle to get the desired size of the StackLayout. + A which contains the desired size of the StackLayout. + The results of this method will be a sum of all the desired sizes of its children along the orientation axis, and the maximum along the non-orientation axis. + + + Gets or sets the value which indicates the direction which child elements are positioned. + A which indicates the direction children layouts flow. The default value is Vertical. + Setting the Orientation of a StackLayout triggers a layout cycle if the stack is already inside of a parent layout. To prevent wasted layout cycles, set the orientation prior to adding the StackLayout to a parent. + + + Identifies the Orientation bindable property. + + + + Gets or sets a value which indicates the amount of space between each child element. + A value in device pixels which indicates the amount of space between each element. The default value is 6.0. + + + Setting this value triggers a layout cycle if the StackLayout is already in a parent Layout. + + + The following example sets the Spacing on construction of a StackLayout. + + + + + + + + Identifies the Spacing bindable property. + + + + The orientations the a StackLayout can have. + + + + StackLayout should be horizontally oriented. + + + StackLayout should be vertically oriented. + + + A control that inputs a discrete value, constrained to a range. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + Increment + + An integer or decimal literal. + + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + ValueChanged + The name of an event handler. Note that this tag must appear below Value. + + + + + + Initializes a new instance of the Stepper class. + To be added. + + + The minimum selectable value. + The maximum selectable value. + The current selected value. + The increment by which Value is increased or decreased. + Initializes a new instance of the Stepper class. + To be added. + + + Gets or sets the increment by which Value is increased or decreased. This is a bindable property. + A double. + + + + Identifies the Increment bindable property. + To be added. + + + Gets or sets the maximum selectable value. This is a bindable property. + A double. + To be added. + + + Identifies the Maximum bindable property. + To be added. + + + Gets or sets the minimum selectabel value. This is a bindable property. + A double. + To be added. + + + Identifies the Minimum bindable property. + To be added. + + + Gets or sets the current value. This is a bindable property. + A double. + To be added. + + + Raised when the property changes. + To be added. + + + Identifies the Value bindable property. + To be added. + + + + that loads an image from a . + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed.. + To be added. + + + Gets or sets the delegate responsible for returning a for the Image. + + + + + Backing store for the property. + To be added. + + + Class that contains triggers, setters, and behaviors that completely or partially define the appearance and behavior of a class of visual elements. + + The class has the following XAML properties: + + + Property + Value + + + BasedOn + + A StaticResource markup extension that names the style on which this style is based. + + + + BaseResourceKey + + A resource dictionary key that names a dynamic base style. + + + + Behaviors + + Markup for the behaviors that are associated with the style. + + + + Setters + + A list of setters containing Property and Value elements or attributes. + + + + TargetType + + The name of the type that the style is intended for. + + + + Triggers + + A list of triggers. + + + + + + + To be added. + Intitializes a new instance. + To be added. + + + The on which this is based. + To be added. + The supports a mechanism in XAML that is similar to inheritance in C#. + + + Gets or sets the key that identifies the on which this is based. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the type of object that this style can describe. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + A control that provides a toggled value. + + The following example describes a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + IsToggled + + + true or false, to indicate whether the switch has been toggled. + + + + Toggled + + The name of an event handler. Note that this tag must appear below IsToggled. + + + + + + + Creates a new element with default values. + To be added. + + + Gets or sets a Boolean value that indicates whether this element is toggled. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when this is toggled by the user. + To be added. + + + A with a label and an on/off switch. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + On + + + true or false, to indicate whether the switch cell is in the "on" position. + + + + OnChanged + + The name of an event handler. Note that this tag must appear below On. + + + + Text + + Text that represents the title of the switch cell. + + + + + + + Initializes a new instance of the SwitchCell class. + To be added. + + + Gets or sets the state of the switch. This is a bindable property. + Default is . + To be added. + + + Triggered when the switch has changed value. + To be added. + + + Identifies the bindable property. + To be added. + + + Gets or sets the text displayed next to the switch. This is a bindable property. + + To be added. + + + Identifies the Text bindable property. + To be added. + + + + that displays an array of tabs across the top of the screen, each of which loads content onto the screen. + + The user interface of a tabbed page consists of a list of items across the top of the screen, and a larger detail area below. The user can scroll the collection of tabs that are across the top of the screen if that collection is too large to fit on one screen. App developers can create tabbed pages in either of two ways. First, application developers can assign a list of objects of a single class, or its subclasses, to the property and assign a to the property to return pages for objects of the least derived type. Second, app developers can add a succession of objects to the property. Both methods are shown in the code examples below. + + The following example code, adapted for brevity from the FormsGallery sample that can be found on the Sample Applications page, shows how to display data of a specific type by assigning a to the property. Note how NamedColorPage gets its color by binding its field. + { + return new NamedColorPage (); + }); + } + } + + // Data type: + class NamedColor + { + public NamedColor (string name, Color color) + { + this.Name = name; + this.Color = color; + } + + public string Name { private set; get; } + + public Color Color { private set; get; } + + public override string ToString () + { + return Name; + } + } + + // Format page + class NamedColorPage : ContentPage + { + public NamedColorPage () + { + // This binding is necessary to label the tabs in + // the TabbedPage. + this.SetBinding (ContentPage.TitleProperty, "Name"); + // BoxView to show the color. + BoxView boxView = new BoxView { + WidthRequest = 100, + HeightRequest = 100, + HorizontalOptions = LayoutOptions.Center + }; + boxView.SetBinding (BoxView.ColorProperty, "Color"); + + // Build the page + this.Content = boxView; + } + } +} + + +]]> + + + The example below creates a tabbed view with two instances. + + + + + + + + + Creates a new element with default values. + To be added. + + + An object for which to create a default page. + Creates a default page, suitable for display in this page, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Called when the parent is set. + This method iterates up the hierarchy and writes a message to the debug listeners if it detects a . Application developers are advised that adding a to a may produce undesirable results. + + + TableIntent provides hints to the renderer about how a table will be used. + Using table intents will not effect the behavior of a table, and will only modify their visual appearance on screen, depending on the platform. Not all intents are unique on all platforms, however it is advisable to pick the intent which most closely represents your use case. + + + A table intended to contain an arbitrary number of similar data entries. + + + A table which is used to contain information that would normally be contained in a form. + + + A table intended to be used as a menu for selections. + + + A table containing a set of switches, toggles, or other modifiable configuration settings. + + + A that contains either a table section or the entire table. + To be added. + + + Constructs and initializes a new instance of the class. + To be added. + + + The title of the table. + Constructs and initializes a new instance of the class with a title. + To be added. + + + A logical and visible section of a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new with the title . + To be added. + + + Abstract base class defining a table section. + + + + + The class has the following XAML property: + + + Property + Value + + + Title + + A title for the section. + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Creates a new object with the specified . + To be added. + + + Gets or sets the title. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + + Table section that contains instances of type T that are rendered by Xamarin.Forms. + + + Sections are used to group cells in the screen and they are the + only valid direct child of the . Sections can contain + any of the standard s, including new s. + + + s embedded in a section are used to navigate to a new + deeper level. + + + You can assign a header and a footer either as strings (Header and Footer) + properties, or as Views to be shown (HeaderView and FooterView). Internally + this uses the same storage, so you can only show one or the other. + + Subtypes of are and , as shown in the following diagram: + + + + + + + + Constructs a new instance with an empty title. + + To be added. + + + To be added. + + Constructs a new instance with the specified . + + To be added. + + + The items to add. + Adds a list of items to this object. + To be added. + + + The item to add. + Adds an item to this object. + To be added. + + + Removes all items in this . + To be added. + + + Event that is raised when one or more items is added to or removed from this object. + To be added. + + + The object for which to determine whether or not this object has a reference. + Returns a Boolean value that indicates whether or not this has a reference to a particular object. + + if this object contains a reference to . Otherwise, . + To be added. + + + To be added. + To be added. + Copies the elements of the current collection to an , starting at the specified index. + To be added. + + + Gets the number of items in this object. + The number of items in this object. + To be added. + + + Returns an enumerator that iterates through the items in this object. + To be added. + To be added. + + + The instance for which to find its index. + Returns the index of the first occurrence of in this object. + The index of the first occurrence of in this object. + To be added. + + + The position at which to insert . + The item to insert. + Inserts an item into this object at the specified position. + To be added. + + + The location of the item to return. + Returns the item that is stored at the location in this object that is specified by . + To be added. + To be added. + + + Calls the method, passing the new binding context, on each of the items in this object. + To be added. + + + To be added. + Removes a specified item from this object. + + , if item was removed from the current collection; if item was not found in the current collection.. + To be added. + + + The position in this object from which to remove an item. + Removes a specified item from this object at the position that is specified by . + To be added. + + + Returns ; The collection of objects in this can be changed. + + ; The collection of objects in this object can be changed. + To be added. + + + Returns an enumerator that iterates through the collection of objects in this object. + To be added. + To be added. + + + A that holds rows of elements. + + A has a as its property. The is a type of . + The following example shows a basic table with two sections. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasUnevenRows + + + true or false, to indicate whether rows in the table view will specify their own height. + + + + Intent + + + Data, Form, Menu, or Settings. + + + + RowHeight + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the rows that are contained in this can have uneven rows. + To be added. + + When the property is , application developers can set the properties to control the height of items in the table. When the property is , the property is ignored. When the property is , app developers can set the property to set the height of all Cells, and their individual properties are ignored. + + + + Backing store for the HasUnevenRows property. + To be added. + + + Gets or sets the intent of the table. + To be added. + To be added. + + + Method that is called when the binding context changes. + To be added. + + + Method that is called when the model changes. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made. + To be added. + To be added. + + + Gets or sets the root of the table. + To be added. + To be added. + + + Gets or sets the row height. + To be added. + To be added. + + + Backing store for the row height property. + To be added. + + + Provides tap gesture recognition and events. + Can be used to recognize single and multiple tap gestures. + + + Initializes a new instance of a TapGestureRecognizer object. + + + + An action whose first argument is the View the recognizer is associated with and whose second argument is the callback parameter. + Initializes a new instance of a TapGestureRecognizer object with a parameterized callback. + + + + An action whose first argument is the View the recognizer is associated with. + Initializes a new instance of a TapGestureRecognizer object with a callback. + + + + The Command to invoke when the gesture has been triggered by the user. This is a bindable property. + To be added. + The object passed to the Command will be the contents of + + + An object to be passed to the TappedCallback. This is a bindable property. + To be added. + To be added. + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + The number of taps required to trigger the callback. This is a bindable property. + The number of taps to recognize. The default value is 1. + + + + Identifies the NumberOfTapsRequired bindable property. + To be added. + + + Event that is raised when the user taps. + To be added. + + + The action to invoke when the gesture has been triggered by the user. This is a bindable property. + An action that will be invoked. + The object passed to the callback will be the contents of . + + + An object to be passed to the TappedCallback. This is a bindable property. + An object. + The primary use case for this property is Xaml bindings. + + + Identifies the TappedCallbackParameter bindable property. + + + + Identifies the TappedCallback bindable property. + + + + Arguments for the event. + To be added. + + + To be added. + Creates a new object with the supplied parameter. + To be added. + + + Gets the parameter object for this object. + To be added. + To be added. + + + Indicates the type of device Forms is working on. + + + + (Unused) Indicates that Forms is running on a computer. + + + Indicates that Forms is running on a Phone, or a device similar in shape and capabilities. + + + Indicates that Forms is running on a Tablet. + + + (Unused) Indicates that Forms is running on an unsupported device. + + + Indicates the kind of OS Forms is currently working on. + + + + Indicates that Forms is running on a Google Android OS. + + + Indicates that Forms is running on an Apple iOS OS. + + + (Unused) Indicates that Forms is running on an undefined platform. + + + Indicates that Forms is running on a Microsoft WinPhone OS. + + + Extension class for DataTemplate, providing a string-based shortcut method for defining a Binding. + To be added. + + + To be added. + To be added. + To be added. + Binds the object's to a new instance that was created with . + To be added. + + + Represents vertical and horizontal text alignement. + This affects the way the text is diaplayed inside of its control bounds. + + + Center-aligned text. + + + End-flushed text. It means right-aligned (resp: bottom-aligned) for horizontal (resp vertical) alignemnt. + + + Start-flushed text. It means left-aligned (resp: top-aligned) for horizontal (resp vertical) alignemnt. + + + + A with primary and text. + + + The following example shows a basic use. + + + + + + + + + + Initializes a new instance of the TextCell class. + + + + Gets or sets the ICommand to be executed when the TextCell is tapped. This is a bindable property. + + Setting the Command property has a side effect of changing the Enabled property depending on ICommand.CanExecute. + + + Gets or sets the parameter passed when invoking the Command. This is a bindable property. + + + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + Gets or sets the secondary text to be displayed in the TextCell. This is a bindable property. + + + + + Gets or sets the color to render the secondary text. This is a bindable property. + The color of the text. Color.Default is the default color value. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. + + + Identifies the DetailColor bindable property. + + + + Gets or sets the secondary text to be displayed. This is a bindable property. + + + + Invoked whenever the Cell is Tapped. + Overriden for TextCell. + + + Gets or sets the primary text to be displayed. This is a bindable property. + + + + + Gets or sets the color to render the primary text. This is a bindable property. + The color of the text. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. Color.Default is the default color value. + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + Event arguments for TextChanged events. Provides old and new text values. + To be added. + + + To be added. + To be added. + Creates a new with and . + To be added. + + + Gets the new text value. + To be added. + To be added. + + + Gets the old text value. + To be added. + To be added. + + + Struct defining thickness around the edges of a using doubles. + To be added. + + + To be added. + Creates a new object that represents a uniform thickness of size . + To be added. + + + To be added. + To be added. + Creates a new object that has a horizontal thickness of and a vertical thickness of . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with thicknesses defined by , , , and . + To be added. + + + The thickness of the bottom of a rectangle. + To be added. + To be added. + + + A to be compared. + Whether the is a with equivalent values. + + if is a and has equivalent values.. + To be added. + + + A has value for this . + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + The thickness of the left side of a rectangle. + To be added. + To be added. + + + A to be compared. + A to be compared. + Whether two es have identical values. + + if and have identical values for ,, , and . + To be added. + + + The value for the uniform Thickness. + Implicit cast operator from . + A Thickness with an uniform size. + + Application developers should bear in mind that and are the sums of their components, so a created from a of, for instance, 1.0, will have of 2.0. + + + + A to convert to a + Converts a into a . + To be added. + + The 's and are both set equal to the 's and the 's and are both set equal to the 's . + + + + A to be compared. + A to be compared. + Whether the values of two 's have at least one difference. + + if any of the ,, , and values differ between and . + To be added. + + + The thickness of the right side of a rectangle. + To be added. + To be added. + + + The thickness of the top of a rectangle. + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that provides time picking. + + The visual representation of a TimePicker is very similar to the one of , except that a special control for picking a time appears in place of a keyboard. + + The following example shows declaration of a TimePicker with a default time set. + + + + + + + + + + + Initializes a new TimePicker instance. + + + + The format of the time to display to the user. This is a bindable property. + A valid time format string. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format bindable property. + + + + Gets or sets the displayed time. This is a bindable property. + The displayed in the TimePicker. + To be added. + + + Identifies the Time bindable property. + + + + Event arguments for and events. + To be added. + + + To be added. + Creates a new that indicates that the toggle control was toggled to . + To be added. + + + Gets the Boolean value to which the toggle control was toggled. + To be added. + To be added. + + + An item in a toolbar or displayed on a . + + Any changes made to the properties of the toolbar item after it has been added will be ignored. + Windows Phone ApplicationBarButtons and MenuItems always display an associated text. Therefore, when developing for Windows Phone, application devs should provide a value for the property. Otherwise, the file name of the icon image will be dixplayed as the text of the . (For example, the user might see "menu.png" in the user interface.) + + + + Constructs and initializes a new instance of the class. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constructs and initializes a new instance of the class. + + + + Raised when the is touched or clicked. + + + + Gets or sets the to be invoked on activation. + The to be invoked on activation. + + + + Gets or sets the parameter to pass to the that is invoked on activation. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets a string that identifies the image that is displayed on this element. + To be added. + To be added. + + + Gets or sets the name of the . + The name of the toolbar item.. + + + + Gets or sets a value that indicates on which of on the primary, secondary, or default toolbar surfaces to display this element. + To be added. + To be added. + + + Gets or sets the priority of this element. + To be added. + To be added. + + + Gets or sets the toolbar to which this element belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying whether the appears on the primary toolbar surface or secondary. + To be added. + + + Use the default choice for the toolbar item. + + + Place the toolbar item on the primary toolbar surface. + + + Place the toolbar item on the secondary toolbar surface. + + + Class that represents a property condition and an action that is performed when the condition is met. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the property whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the property that is named by becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the property, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + This property supports XAML infrastructure and is not intended to be directly used by application developers. + To be added. + To be added. + + + A base class for user-defined actions that are performed when a trigger condition is met. + Application developers should use , instead. + + + The type of the objects with which this can be associated. + Creates a new instance of the TriggerAction class. + + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to provide the behavior that is triggered. + To be added. + + + The type of which the property must be an instance. + A generic base class for user-defined actions that are performed when a trigger condition is met. + + + + Creates a new instance of the class. + + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + Base class for classes that contain a condition and a list of actions to perform when the condition is met. + + + + Gets the list of objects that will be invoked when the trigger condition is met. Ignored for the class. + + + + + Gets the list of objects that will be invoked after the trigger condition is no longer met. Ignored for the class. + + + + + Gets a value that indicates whether or not the trigger is sealed. + To be added. + A trigger becomes sealed when its method is called. Once it is sealed, its and lists become readonly. + + + The type of object to which this object can be attached. + To be added. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + This method throws an exception if is not an instance of . In that case, the method is not called. + + + To be added. + Attempts to detach from . If successful, calls .. + This method throws an exception if is . In that case, the method is not called. + + + Abstract base class whose subclasses can convert values between different types. + + The following diagram shows subclasses of . + + + + + + + Creates a new object. + To be added. + + + To be added. + When implemented in a derived class, returns a Boolean value that indicates whether or not the derived type converter can convert to its target type. + To be added. + To be added. + + + To be added. + Calls with the current culture information and . + To be added. + To be added. + + + To be added. + To be added. + When implemented in a derived class, converts an object that is a version of and that can be cast to the target type. + To be added. + To be added. + + + Attribute that specifies the type of used by its target. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new object that specifies that the class it decorates converts values to the type. + To be added. + + + To be added. + reates a new object that specifies that the class it decorates converts values to . + To be added. + + + The name of the type to which the class decorated with this attribute can convert values. + To be added. + To be added. + + + A that contains no information about the types to which the class that it decorates can convert values. + To be added. + + + To be added. + Returns true if is a and has the same value. + To be added. + To be added. + + + Returns a value that is used for efficient storage and lookup of this object. + To be added. + To be added. + + + Exception indicating that the s specified cannot be simultaneously satisfied. + To be added. + + + A description for this exception. + Creates a new object with the explanatory message. + To be added. + + + An ImageSource that loads an image from a URI, caching the result. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets a structure that indicates the length of time after which the image cache becomes invalid. + To be added. + To be added. + + + Gets or sets a Boolean value that indicates whether caching is enabled on this object. + To be added. + To be added. + + + Gets or sets the URI for the image to get. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A that converts from a string or to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A WebViewSource bound to a URL. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the URL for this object. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for ValueChanged events. Provides both old and new values. + To be added. + + + To be added. + To be added. + Creates a new event with and . + To be added. + + + Gets the new value. + To be added. + To be added. + + + Gets the old value. + To be added. + To be added. + + + Struct defining X and Y double values. + To be added. + + + To be added. + To be added. + Creates a new that is defined by and . + To be added. + + + The horizontal coordinate. + To be added. + + + The vertical coordinate. + To be added. + + + A visual element that is used to place layouts and controls on the screen. + + The class is a base class for the class, and most of the controls that application developers will use. Nearly all UI elements that an application developer will use are derived from class. Because the class ultimately inherits from class, application developers can use the Model-View-ViewModel architecture, as well as XAML, to develop portable user interfaces. The remarks in the topic provide a discussion of MVVM and bound properties. + + + + Initializes a new instance of the View class. + It is unlikely that an application developer would want to create a new View instance on their own. + + + The collection of gesture recognizers associated with this view. + A List of . + + + Adding items to this collection will associate gesture events with this element. This is not nessesary for elements which natively support input, such as a Button. + + + This example creates a tap gesture recognizer and associates it with an image. When the image is double tapped, it will become semi-transparent. + + + image.Opacity = 0.5, + NumberOfTapsRequired = 2 + }; + image.GestureRecognizers.Add (gestureRecognizer); + ]]> + + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the HorizontalOptions modifies how the element is laid out when there is excess space available along the X axis from the parent layout. Additionally it specifies if the element should consume leftover space in the X axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the HorizontalOptions bindable property. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + Overriders must call the base method. + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the VerticalOptions modifies how the element is laid out when there is excess space available along the Y axis from the parent layout. Additionally it specifies if the element should consume leftover space in the Y axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the VerticalOptions bindable property. + + + + A containing a developer-defined . + + + + Initializes a new instance of the ViewCell class. + + + + Gets or sets the View representing the content of the ViewCell. + + + + + Extension methods for s, providing animatable scaling, rotation, and layout functions. + To be added. + + + To be added. + Aborts the TranslateTo, LayoutTo, RotateTo, ScaleTo, and FadeTo animations on element. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the fade that is described by the , , and parameters. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that eases the bounds of the that is specified by the to the rectangle that is specified by the parameter. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Rotates the that is specified by from its current rotation by . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by from its current scale to . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the rotation that is described by the , , and parameters.. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the Y axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the X axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by to the absolute scale factor . + To be added. + To be added. + + + The view to tanslate. + The x component of the final translation vector. + The y component of the final translation vector. + The duration of the animation in milliseconds. + The easing of the animation. + Animates an elements TranslationX and TranslationY properties from their current values to the new values. + To be added. + Translate to is particular useful for animations because it is applied post-layout. Translation animations will not conflict with managed layouts and thus are ideal for doing slide in/out style animations. + + + Deprecated. Do not use. + To be added. + + + Deprecated. Do not use. + + + Deprecated. Do not use. + + + Deprecated. Do not use.. + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + The base class for most Xamarin.Forms on-screen elements. Provides most properties, events, and methods for presenting an item on screen. + + + + Gets or sets the X component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the X component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorX bindable property. + To be added. + + + Gets or sets the Y component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the Y component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorY bindable property. + To be added. + + + Gets or sets the color which will fill the background of a VisualElement. This is a bindable property. + The color that is used to fill the background of a VisualElement. The default is . + To be added. + + + Identifies the BackgroundColor bindable property. + To be added. + + + Signals the start of a batch of changes to the elements properties. + Application authors will not generally need to batch updates manually as the animation framework will do this for them. + + + Signals the end of a batch of commands to the element and that those commands should now be committed. + This method merely ensures that updates sent during the batch have been committed. It does not ensure that they were not committed before calling this. + + + Gets the list of Behavior associated to this element. This is a bindable propery. + + + + + Identifies the Behaviors bindable property. + + + + Gets the bounds of the element. + The bounds of an element, in device-independent units. + Bounds is assigned during the Layout cycle by a call to . + + + + + Occurs when the Children of a VisualElement have been re-ordered. + + + + Attemps to set focus to this element. + + if the keyboard focus was set to this element; if the call to this method did not force a focus change. + Element must be able to receive focus for this to work. Calling Focus on offscreen or unrealized elements has undefined behavior. + + + Occurs when the element receives focus. + Focused event is raised whenever the VisualElement receives focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + + + The available width that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the element. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of your app. Overriding GetSizeRequest should only be done if you want to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + Gets the current rendered height of this element. This is a read-only bindable property. + The renderered height of this element. + The height of an element is set during the Layout phase. + + + Identifies the Height bindable property. + + + + Gets or sets the desired height override of this element. + The height this element desires to be. + HeightRequest does not immediately change the Bounds of a VisualElement, however setting the HeightRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the HeightRequest property. + To be added. + + + Gets or sets a value indicating whether this element should be involved in the user interaction cycle. This is a bindable property. + + if the element should be able to receive input; if element should not receive input and should pass inputs to the element below. Default is true. + Setting InputTransparent is not the same as setting IsEnabled to false. Setting InputTransparent only disables inputs and instead causes them to be passed to the VisualElement below the element. Usually this is the parent of the element. + + + + Identifies the InputTransparent bindable property. + + + + Method that is called to invalidate the layout of this . Raises the event. + To be added. + + + Gets or sets a value indicating whether this element is enabled in the user interface. This is a bindable property. + + if the element is enabled; otherwise, . The default value is + + + Elements that are not enabled do not participate in hit detection, and therefore will not receive focus or emit input events. + + + The following example shows a handler on a button which will then set IsEnabled to false on another button. + + + button2.IsEnabled = false; + } + } + ]]> + + + + + Identifies the InputTransparent bindable property. + + + + Gets a value indicating whether this element is focused currently. This is a bindable property. + + if the element is focused; otherwise, . + + + Applications may have multiple focuses depending on the implementation of the underlying toolkit. Menus and modals in particular may leave multiple items with focus. + + + The following example shows conditionally setting a background color based on the focus state. + + + + + + + + Identifies the IsFocused bindable property. + + + + Gets or sets a value that determines whether this elements should be part of the visual tree or not. This is a bindable property. + + if the element should be rendered; otherwise, . Default value is . + + Setting IsVisible to false will remove the element from the visual tree. The element will no longer take up space in layouts or be eligle to receive any kind of input event. + + The following example shows a stack where the middle element is toggled when a button is activated. + + + + + + + + Identifies the IsVisible bindable property. + + + + The new bounds of the element. + Updates the bounds of the element during the layout cycle. + Calling Layout will trigger a layout cycle for the sub-tree of this element. + + + Event that is raised when the layout of a visual element is invalidated. + To be added. + + + Gets or sets a value which overrides the minimum height the element will request during layout. + The minimum height the element requires. Default value is -1. + + + MinimumHeightRequest is used to override the results of a call to by setting the minimum height property. This causes overflow handling to shrink this element to its minimum height before elements who do not have a minimum size set. + + + The following example sets the MinimumHeightRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumHeightRequest property. + To be added. + + + Gets or sets a value which overrides the minimum width the element will request during layout. + The minimum width the element requires. Default value is -1. + + + MinimumWidthRequest is used to override the results of a call to by setting the minimum width property. This causes overflow handling to shrink this element to its minimum width before elements who do not have a minimum size set. + + + The following example sets the MinimumWidthRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumWidthRequest property. + To be added. + + + Gets the context aware navigation interface for the element. + An that allows for navigation using the ancestral navigation implementor. + + + Use the Navigation property to perform navigation from any element. If the element has not yet been added to a tree which contains a navigation implementor, the actions are queued up until it is. + + + The following example navigates to a new page created in the callback of a buttons event. + + + + + + + Identifies the Navigation bindable property. + + + + Invoked whenever the event is about to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + It is required to call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. Most layouts will want to implement this method in order to layout their children during a layout cycle. + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + A which contains the desired size of the element. + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the opacity value applied to the element when it is rendered. This is a bindable property. + The opacity value. Default opacity is 1.0. Values will be clamped between 0 and 1 on set. + + + The opacity value has no effect unless IsVisible is . Opacity is inherited down the element hierarchy. If a parent has 0.5 opacity, and a child has 0.5 opacity, the child will render with an effective 0.25 opacity. Setting opacity to 0 has undefined behavior with input elements. + + + The following example sets the opacity of a layout to 0.5 and the opacity of one of its children to 0.5, making the child 25% opaque. + + + + + + + + Identifies the Opacity bindable property. + + + + Gets or sets the local resource dictionary. + The current resource dictionary, where resources are stored by key. + + In XAML, resource dictionaries are filled with key/value pairs that are specified in XML and consequently created at run time. The keys in the resource dictionary are specified with the x:Key attribute of the XML tag for the type to create. An object of that type is created, and is initialized with the property and field values that are specified either by additional attributes or by nested tags, both of which, when present are simply string representations of the property or field names. The object is then inserted into the for the enclosing type at runtime. + + For example, the XAML below, taken from the XAML for Xamarin.Forms series, creates a resource dictionary that contains object constants that can be used for any objects that are added to the surrounding : + + + + + + + +]]> + Note that the above snippet is only valid when nested within a <ContentPage>...</ContentPage> tag pair. Within that pair, the app developer can use both of the horzOptions and vertOptions keys to specify values for properties of type by using the "{...}" static resource syntax. The short example below, also taken from the XAML for Xamarin.Forms series, illustrates this syntax: + ]]> + Resource dictionaries and their associated XML provide the application developer with a convenient method to reuse code inside the XAML compile-time and run-time engines. + + + + + Gets or sets the rotation about the Z-axis (affine rotation) when the element is rendered. + The rotation about the Z-axis in degrees. + Rotation is applied relative to and . + + + Identifies the Rotation bindable property. + + + + Gets or sets the rotation about the X-axis (perspective rotation) when the element is rendered. + The rotation about the X-axis in degrees. + RotationX is applied relative to and . + + + Identifies the RotationX bindable property. + + + + Gets or sets the rotation about the Y-axis (perspective rotation) when the element is rendered. + The rotation about the Y-axis in degrees. + RotationY is applied relative to and . + + + Identifies the RotationY bindable property. + + + + Gets or sets the scale factor applied to the element. + The scale factor of the element. Default value is 1.0. + Scale is applied relative to and . + + + Identifies the Scale bindable property. + + + + The newly allocated width. + The newly allocated height. + SizeAllocated is called during a layout cycle to signal the start of a sub-tree layout. + Calling SizeAllocated will start a new layout cycle on the children of the element. Excessive calls to SizeAllocated may cause performance problems. + + + Occurs when either the Width or the Height properties change value on this element. + Classes should implement if they wish to respond to size change events directly. + + + Gets or sets the style that defines how this visual element is displayed. + To be added. + To be added. + + + Backing store for the Style property. + To be added. + + + Gets or sets the X translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationX bindable property. + + + + Gets or sets the Y translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationY bindable property. + + + + Gets the list of Trigger associated to this element. This is a bindable property. + + + + + Identifies the Triggers bindable property. + + + + Unsets focus to this element. + Element must already have focus for this to have any effect. + + + Occurs when the element loses focus. + Unfocused event is raised whenever the VisualElement loses focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + Gets the current rendered width of this element. This is a read-only bindable property. + The renderered width of this element. + The width of an element is set during the Layout phase. + + + Identifies the Width bindable property. + + + + Gets or sets the desired width override of this element. + The width this element desires to be. + WidthRequest does not immediately change the Bounds of a VisualElement, however setting the WidthRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the WidthRequest property. + To be added. + + + Gets the current X position of this element. This is a read-only bindable property. + The X position of this element relative to its parents bounds. + The x value of an element is set during the Layout phase. + + + Invalidates the measure when the native size of the element changes. + To be added. + + + Identifies the X bindable property. + + + + Gets the current Y position of this element. This is a read-only bindable property. + The Y position of this element relative to its parents bounds. + The y value of an element is set during the Layout phase. + + + Identifies the Y bindable property. + + + + Class that contains arguments for the event that is raised after web navigation completes. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets a value that describes the result of the navigation. + To be added. + To be added. + + + Class that contains arguments for the event that is raised after web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether or not to cancel the navigation. + To be added. + To be added. + + + Contains values that indicate why a navigation event was raised. + To be added. + + + Indicates that the navigation resulted from the user going back to a previous page in the navigation history. + + + Indicates that the navigation resulted from the user going forward to a later page in the navigation history. + + + Indicates that the navigation was to a preiously unvisited page, according to the navigation history. + + + Indicates that the navigation resulted from a page refresh. + + + TClass that contains arguments for the event that is when web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets the navigation event that was raised. + To be added. + To be added. + + + Gets the element that performed the navigation. + To be added. + To be added. + + + The destination of the navigation. + To be added. + To be added. + + + Enumerates values that indicate the outcome of a web navigation. + To be added. + + + The navigation was cancelled. + + + The navigation failed. + + + The navigation succeeded. + + + The navigation timed out. + + + A that presents HTML content. + + The following example shows a basic use. + + + + + + + + + + Creates a new element with default values. + To be added. + + + Gets a value that indicates whether the user can navigate to previous pages. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Gets a value that indicates whether the user can navigate forward. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A script to evaluate. + Evaluates the script that is specified by . + To be added. + + + Navigates to the previous page. + To be added. + + + Navigates to the next page in the list of visited pages. + To be added. + + + Event that is raised after navigation completes. + To be added. + + + Event that is raised when navigation starts. + To be added. + + + To be added. + Method that is called when is changed. + To be added. + + + To be added. + To be added. + Method that is called when the view source that is specified by the parameter is changed. + To be added. + + + Gets or sets the object that represents the location that this object displays. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Abstract class whose subclasses provide the data for a . + To be added. + + + Creates a new object with default values. + To be added. + + + Method that is called when the source is changed. + To be added. + + + To be added. + Casts a string that contains a URL to a instance. + To be added. + To be added. + + + To be added. + Casts a object to a instance. + To be added. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Defines the interface for Xamarin.Forms XAML markup extensions. + + + Types implementing this interface can be used as custom XAML markup extension. + + + The following example shows declaration of a custom markup extension. + + + The markup extension can be used directly in XAML + + + + + To be added. + Returns the object created from the markup extension. + The object + + + + Interface that defines a target and property to which a value is provided. + To be added. + + + Gets the target object. + To be added. + To be added. + + + Gets an object that identifies the target property. + To be added. + To be added. + + + Interface that defines the ability to return a root object, for instance, the top-level in a layout. + To be added. + + + The root object. + To be added. + To be added. + + + Interface defining the ability to resolve a qualified type name into a Type. + To be added. + + + To be added. + Returns the resolved type. + To be added. + To be added. + + + To be added. + To be added. + Tries to resolve a type name, putting the type value in , and returns a Boolean value that indicates whether the operation succeeded. + To be added. + To be added. + + + Exception that is thrown when the XAML parser encounters an error. + To be added. + + + Information about the condition that caused the exception to be thrown. + To be added. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Platform.Android.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Platform.Android.dll new file mode 100644 index 0000000..da55096 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Platform.Android.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Xaml.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Xaml.dll new file mode 100644 index 0000000..6d49db3 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Xaml.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Xaml.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Xaml.xml new file mode 100644 index 0000000..3a50b08 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoAndroid10/Xamarin.Forms.Xaml.xml @@ -0,0 +1,137 @@ + + + Xamarin.Forms.Xaml + + + + Markup extension for parsing arrays. + To be added. + + + Creates a new with default values. + To be added. + + + Returns a list of the items in this . + To be added. + To be added. + + + To be added. + Returns an array that contains items of the type that is specified by the property. + To be added. + To be added. + + + Gets or sets the type of the items that can be stored in the array. + To be added. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + To be added. + + + To be added. + Internal. + To be added. + To be added. + + + Extension class for defining method. + To be added. + + + To be added. + To be added. + To be added. + Configures with the properties that are defined in the application manifest for . + To be added. + To be added. + + + Extension class that differentiates between null values and empty strings. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns the null object. + To be added. + To be added. + + + Markup extension for referring to other XAML-defined types. + To be added. + + + Creates a new with default values. + To be added. + + + Gets or sets the name of the entity to reference. + To be added. + To be added. + + + To be added. + Returns an object that represents the type that was referred to. + To be added. + To be added. + + + A markup extension that gets a static member value. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the member name. + To be added. + To be added. + + + To be added. + Returns the value of the member. + To be added. + To be added. + + + A markup extension for parsing type descriptors. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns an object that represents the type specified by the markup. + To be added. + To be added. + + + Gets or sets the name of the type. + To be added. + To be added. + + + Exception that is raised when the XAML parser encounters a XAML error. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Core.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Core.dll new file mode 100644 index 0000000..78dbe04 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Core.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Core.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Core.xml new file mode 100644 index 0000000..db18b55 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Core.xml @@ -0,0 +1,13626 @@ + + + Xamarin.Forms.Core + + + + Positions child elements at absolute positions. + + Application developers can control the placement of child elements by providing proportional coordinates, device coordinates, or a combination of both, depending on the values that are passed to method. When one of the proportional enumeration values is provided, the corresponding X, or Y arguments that range between 0.0 and 1.0 will always cause the child to be displayed completely on screen. That is, you do not need to subtract or add the height or width of a child in order to display it flush with the left, right, top, or bottom of the . For width, height, X, or Y values that are not specified proportionally, application developers use device-dependent units to locate and size the child element. + + The following example shows how to use an with proportional position arguments. + + The code sample below shows how to place two labels by specifying device-dependent units. + + + The following image shows the AbsoluteLayout demo from the FormsGallery sample. + + + + + + The class has the following XAML attached properties: + + + Attached Property + Value + + + AbsoluteLayout.LayoutBounds + + A comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + AbsoluteLayout.LayoutFlags + + + enumeration value names: All, None, HeightProportional, WidthProportional, SizeProportional, XProportional, YProportional, or PositionProportional. Application developers can combine any of these flags together by supplying a comma-separated list. + + + + Application developers can use XAML to lay out elements with the class. The example below places a blue inside an : + + + +]]> + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Initializes a new instance of the AbsoluteLayout class. + To be added. + + + A value that indicates that the width or height of the child should be sized to that childs native size. + + + Application developers can set the width or height of the property to on a visual element when adding to the layout to cause that element to be measured during the layout pass and sized appropriately. + + + + Gets the collection of child elements of the AbsoluteLayout. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the AbsoluteLayout class. + + + + A visual element. + Gets the layout bounds of . + The layout bounds of the object. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + A visual element. + Gets the layout flags that were specified when was added to an . + The layout flags of the object. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. + + + + Implements the attached property that represents the layout bounds of child elements. Bindable at run time with the string "LayoutBounds". See Remarks. + The interface for this property is defined by the and methods. + + + + The X coordinate of the region that contains the child elements and that is used to calulate proportional values. + The Y coordinate of the region that contains the child elements and that is used to calulate proportional values. + The width of the the region that contains the child elements and that is used to calulate proportional values. + The height of the region that contains the child elements and that is used to calulate proportional values. + Positions and sizes the children of an AbsoluteLayout. + + Application developers can override to change the default behavior of . When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + Implements the attached property that contains the values for child elements. + The interface for this property is defined by the and methods. + + + + The element that was added to the children. + Called when a child is added to the . + + Application developers can override to change the default behavior thata is triggered when a child is added. When doing so, it is recommended to call the base method and then add additional logic. + + + + The element that was removed from the children. + Called when a child is removed from the . + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then add additional logic. + + + + The available width for the AbsoluteLayout to use. + The available height for the AbsoluteLayout to use. + Called during the measure pass of a layout cycle to get the desired size of the AbsoluteLayout. + A which contains the desired size of the AbsoluteLayout. + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + The view to delimit by . + A rectangle that represents the desired size and shape of . + Sets the layout bounds of a view that will be used to size it when it is layed out. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. Application developers can call this method to update the layout of a view after it is added. + + + + The view on which to set the layout flags. + A that describes the how to interpret the layout bounds for . + Sets the layout flags of a view that will be used to interpret the layout bounds set on it when it is added to the layout. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. Application developers can call this method to update the layout flags of a view after it is added. + + + + The type of elements in the absolute layout. + List interface with overloads for adding elements to an absolute layout. + + + + The view to add. + The location at which to position the view. + Adds a view to the list at the specified location with automatic sizing. + + + + The view to add. + The bounds to layout the view with. + The flags to interpret bounds with. + Adds a view to the list with the specified bounds and flags. + + + + Flags used to modify how layout bounds are interpreted in an . + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Interpret all dimensions proportionally. + + + Interpret height property as proportional to layout height. + + + Disable all flags. + + + Equivalent to both XProportional | YProportional. + + + Equivalent to both WidthProportional | HeightProportional. + + + Interpret width property as proportional to layout width. + + + Interpret x property as proportional to the remaining space after width is accounted for. + + + Interpret y property as proportional to the remaining space after height is accounted for. + + + A visual control used to indicate that something is ongoing. + + This control gives a visual clue to the user that something is happening, without information about its progress. + + + + The class has the following XAML properties: + + + Property + Value + + + Color + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + IsRunning + + + or , to indicate whether the animation for is displayed. + + + + + The example below creates a red activity indicator that is animated to imply that an activity is ongoing: + ]]> + + + + + Initializes a new instance of the ActivityIndicator class. + + The following example shows the initialization of a running ActivityIndicator. + + + + + + + + Gets or sets the of the ActivityIndicator. This is a bindable property. + A used to display the ActivityIndicator. Default is . + + + + Identifies the Color bindable property. + + + + Gets or sets the value indicating if the ActivityIndicator is running. This is a bindable property. + A indicating if the ActivityIndicator is running. + + + + Identifies the Color bindable property. + + + + Encapsulates an animation, a collection of functions that modify properties over a user-perceptible time period. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Runs the animation with the supplied parameters. + To be added. + + + Returns a callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + A callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + To be added. + + + Returns an enumerator that can be used to iterate over the child objects of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds to the children of this object and sets the start and end times of to and , respectively. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters, and adds it to the children of this object. + To be added. + To be added. + + + Extension methods for . + To be added. + + + To be added. + To be added. + Stops the animation. + To be added. + If refers to an animation that belongs to this instance, then its tweener handlers are removed, the tweener is stopped, the animation is removed from this instance, and it is marked as finished. If refers to one of the kinetics that belong to this instance, then it and its ticker are removed. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the kinetic animation. + To be added. + + + To be added. + To be added. + Returns a Boolean value that indicates whether or not the animation that is specified by is running. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a function that performs a linear interpolation between and . + A function that performs a linear interpolation between and . Application developers can pass values between 0.0f and 1.0f to this function in order to recieve a value that is offset from or , depending on the value of , by the passed value times the distance between and . + If is , then the interpolation happens between and . + + + Class that represents a cross-platform mobile application. + To be added. + + + Initializes a new instance. + To be added. + + + Gets the current application. + To be added. + To be added. + + + Gets or sets the main page of the application. + To be added. + This property throws an exception if the application developer attempts to set it to . + + + Throws . + To be added. + + + Application developers override this method to perform actions when the application resumes from a sleeping state. + To be added. + + + Application developers override this method to perform actions when the application enters the sleeping state. + To be added. + + + Application developers override this method to perform actions when the application starts. + To be added. + + + Gets the dictionary of properties for this object. + To be added. + To be added. + + + Gets or sets the resource dictionary for this object. + To be added. + To be added. + + + Defines how an image is displayed. + + + + Scale the image to fill the view. Some parts may be clipped in order to fill the view. + + + + Scale the image to fit the view. Some parts may be left empty (letter boxing). + + + Scale the image so it exactly fill the view. Scaling may not be uniform in X and Y. + + + Contains arguments for the event that is raised when a back button is pressed. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the back button event has already been handled. + To be added. + To be added. + + + Base class for menu items. + To be added. + + + Intializes a new instance. + To be added. + + + Base class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize the generic class, instead of directly using . + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + To be added. + + + To be added. + Detaches from . Calls the method. + To be added. + + + The type of the objects with which this can be associated. + Base generic class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize this generic class, instead of directly using . + + + Creates a new instance. + + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + Provides a mechanism by which application developers can propagate changes that are made to data in one object to another, by enabling validation, type coercion, and an event system. . + + The class provides a data storage mechanism that enables the application developer to synchronize data between objects in response to changes, for example, between the View and View Model in the MVVM design pattern. All of the visual elements in the namespace inherit from class, so they can all be used to bind the data behind their user interface elements to View Models that are supplied by the application developer. + + To bind the data behind a property in a , typically a view, to a property in the View Model, application developers should do the following. + First, the developer creates a pair of properties on the view, one of which is a , and the other of which is a property of whatever type is required. In the code below, MockBindableObject stands in for what would typically be a user interface object in production code. Application developers should note the use of and to get and set the value on the bound property; The property of the desired type provides the interface that the target of the bound property will implement. + ( + // o => o.Foo, default (string) + // ); + + public string BoundName + { + get { return (string) GetValue (BoundNameProperty); } + set { SetValue (BoundNameProperty, value); } + } +} + ]]> + Second, the developer creates the implementation for the bound property in a class that implements the interface. In the MVVM design pattern, this is typically done by the View Model. Application developers should implement the interface on classes that they want to use as View Models. In the example below, app developers should take note of the idiomatic way that the Name property is implemented to, first, ensure that the property actually changed and return if it did not, and only then assign the value and call the method. Additionally, the Name property in the example below merely wraps the name field. In practice, the application developer may choose a different model in which to store application data. + + Third, and finally, the application developer binds an instance of a BindableObject to an instance that implements INotifyPropertyChanged. In the vocabulary of the MVVM design pattern, this is "binding an instance of the View to an instance of a View Model." Once this step is complete, changes in the data are propagated between the View and View Model in a way that is determined by the value of the enumeration, if any, that was passed during the binding step. + The code below, when included in a project that reference the classes above, creates an instance of both MockBindable and MockViewModel, performs some intitialization, sets the binding, and then demonstrates a one-way binding. The code below runs without throwing an exception. + + + + + + Initializes a new instance of the BindableObject class. + The class is abstract, and this constructor is protected. It is invoked by child constructors. + + + The object that contains the properties that will be targeted by the bound properties that belong to this . This parameter is optional. + Apply the bindings to this. + + If an object is passed for the argument, bindings are first unapplied from . This method removes any current bindings from the old context, and applies every binding to the current . Application developers could use this method to bind the UI from a new View to an existing ViewModel, while optionally removing the bindings from the old View. Application developers can omit the argument in order to leave the old bindings in place. + + + + Gets or sets object that contains the properties that will be targeted by the bound properties that belong to this . + An that contains the properties that will be targeted by the bound properties that belong to this . This is a bindable property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to apply a BindingContext and a Binding to a Label (inherits from BindableObject): + + + + + + + Raised whenever the property changes. + + + + Implements the bound property whose interface is provided by the property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to set a binding to the BindingContext: + + + + + + + The BindableProperty to clear. + Clears any value set by for . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindablePropertyKey that identifies the to clear. + Clears any value set by for the property that is identified by . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindableProperty for which to get the value. + Returns the value that is contained the BindableProperty. + The value that is contained the . + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + Override this method to execute an action when the BindingContext changes. + + + + The name of the property that changed. + Call this method from a child class to notify that a change happened on a property. + + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + + The name of the property that is changing. + Call this method from a child class to notify that a change is going to happen on a property. + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + Raised when a property has changed. + + + + Raised when a property is about to change. + + + + The BindableProperty from which to remove bindings. + Removes a previously set binding. + + This method succeeds even if is not bound. + + + + The BindableProperty on which to set a binding. + The binding to set. + Assigns a binding to a property. + + The following example shows how to set a binding to a property: + + + + + + + The object on which to set the inherited binding context. + The inherited context to set. + Sets the inherited context to a nested element. + + + + The BindableProperty on which to assign a value. + The value to set. + Sets the value of the specified property. + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + The BindablePropertyKey on which to assign a value. + The value to set. + Sets the value of the propertyKey. + + This method and are useful to implement BindableProperties with limited write access. The write access is limited to the scope of the BindablePropertyKey. + The following example shows how to declare a BindableProperty with "internal" write access. + + (w => w.My, default(string)); + public static readonly BindableProperty MyProperty = MyPropertyKey.BindableProperty; + + public string My { + get { return (string)GetValue (MyProperty); } + internal set { SetValue (MyPropertyKey, value); } + } +} + ]]> + + + + + Unapply all the bindings. + + This method removes all current bindings from the current context. + Changing a bound property requires that the binding count for a bound property must be 0. The method merely decrements the cound, and does not remove all bindings everywhere. + + + + Contains convenience extension methods for . + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + The for the binding. This parameter is optional. Default is . + An for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The source type. + The BindableObject. + The BindableProperty to bind to + An expression used to retrieve the source path. + The BindingMode for the binding. This parameter is optional. Default is . + An IValueConverter for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding from an expression. + + This extension method uses Expression instead of path to creates and sets bindings. Using Expressions is more refactoring friendly. + This following example illustrates the setting of a binding using the extension method. + + (Label.TextProperty, vm => vm.Name); +label.BindingContext = new PersonViewModel { + Name = "John Doe", + Company = "Xamarin" +}; +Debug.WriteLine (label.Text); //prints "John Doe" + ]]> + + + + + A BindableProperty is a backing store for properties allowing bindings on . + + The following example shows the creation of a BindableProperty as a backing store for a property. It shows also how to bind to that BindableProperty. + + (w => w.Foo, default(string)); + + public string Foo { + get { return (string)GetValue (FooProperty); } + set { SetValue (FooProperty, value); } + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MockBindable.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (bindable.Foo); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + To be added. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the type declaring the BindableProperty + + Unused + + + Gets the default BindingMode. + + + + + Gets the default value for the BindableProperty. + + + + + Gets the Func used as default value creator. + + + + + Gets a value indicating if the BindableProperty is created form a BindablePropertyKey. + + + + + Gets the property name. + + + + + Gets the type of the BindableProperty. + + + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + Strongly typed delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + The secret key to a BindableProperty, used to implement a BindableProperty with restricted write access. + + The following example shows the creation of a BindablePropertyKey. Write access is while read access is . + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the BindableProperty. + A BindableProperty used for read access. + + + + A single 1:1 immutable data binding. + This class is immutable. + + + Constructs and initializes a new instance of the class. + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + An object used as the source for this binding. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + Gets or sets the converter to be used for this binding ? + An IValueConverter, or . + + + + Gets or sets the parameter passed as argument to the converter. + An object, or . + + + + The type of the source of the binding. + An expression used to retrieve the binding path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + This is a convenient factory method to create a binding from an expression, instead of a property name. This api is more resilient to refactoring. + A newly created binding. + + The following example shows how to set a binding to a property : + + (vm => vm.Name)); +Debug.WriteLine (label.Text); //prints "John Doe". + ]]> + + + + + Gets or sets the path of the property + A string indicating the path to the property. + + + + Gets or sets the source of the binding. + An object used as the binding source. + If the Source is not null, the BindingContext is ignored, and the Source is used instead. This allows to set a source for a single Binding, and not for all the Bindings applied to the BindableObject. + + + An abstract class that provides a and a formatting option. + To be added. + + + To be added. + Stops synchronization on the . + To be added. + + + To be added. + To be added. + To be added. + Starts synchronization on the by using and . + To be added. + + + Gets or sets the mode for this binding. + To be added. + To be added. + + + Gets or sets the string format for this binding. + + A string specifying the format for the value of this binding. + + + + Used for providing a display format for the binding value or compositing the value with other + text. Implementors of decide how the string format is utilized, but + all support standard conventions. + + + allows for one argument for its singular value. + + + + A simple example showing compositing text and determining the display format for the value with a + + + + + + + + Throws an if the binding has been applied. + + Use this method in property setters as bindings can not be changed once applied. + + + + Class that represents a value comparison with the target of an arbitrary binding. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets the binding against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Used by XAML infrastructure. + To be added. + To be added. + + + The direction of changes propagation for bindings. + + The following examples shows some BindingMode use cases. + + (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 (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 (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" + ]]> + + + + + When used in Bindings, indicates that the Binding should use the . When used in BindableProperty declaration, defaults to BindingMode.OneWay. + + + 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. + + + 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. + + + Indicates that the binding should propagates changes from source (usually the View Model) to target (the BindableObject) in both directions. + + + Type converter that converts from source types to + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert to . + To be added. + To be added. + + + To be added. + To be added. + Converts to by using . + To be added. + To be added. + + + A bounds layout constraint used by s. + To be added. + + + To be added. + To be added. + Returns a object that contains the compiled version of and is relative to either or the views referred to in . + To be added. + To be added. + + + A that converts strings into s for use with s. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A used to draw a solid colored rectangle. + + BoxView is a useful stand-in for images or custom elements when doing initial prototyping. BoxView has a default size request of 40x40. If you need a different size, assign the and properties. + The class has the following XAML properties: + PropertyValueColorA color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + The example below creates a red with the default width and height. + ]]> + + The following example shows a basic use: + + + + + + + + + + Initializes a new instance of the BoxView class. + + + + Gets or sets the color which will fill the rectangle. This is a bindable property. + The color that is used to fill the rectangle. The default is . + + + + Identifies the Color bindable property. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + + + A button that reacts to touch events. + + + The following example shows a basic use: + + + + + + + + + Initializes a new instance of the Button class. + + + + Gets or sets a color that describes the border stroke color of the button. This is a bindable property. + The color that is used as the border stroke color; the default is . + This property has no effect if is set to 0. On Android this property will not have an effect unless is set to a non-default color. + + + Backing store for the BorderColor bindable property. + + + + Gets or sets the corner radius of the border. This is a bindable property. + The corner radius of the button border; the default is 5. + + + + Backing store for the BorderRadius bindable property. + + + + Gets or sets the width of the border. This is a bindable property. + The width of the button border; the default is 0. + Set this value to a non-zero value in order to have a visible border. + + + Backing store for the BorderWidth bindable property. + + + + Occurs when the Button is clicked. + The user may be able to raise the clicked event using accessibility or keyboard controls when the Button has focus. + + + Gets or sets the command to invoke when the button is activated. This is a bindable property. + A command to invoke when the butto is activated. The default value is . + This property is used to associate a command with an instance of a button. This property is most often set in the MVVM pattern to bind callbacks back into the ViewModel. is controlled by the Command if set. + + + Gets or sets the parameter to pass to the Command property. This is a bindable property. + A object to pass to the command property. The default value is . + + + + Backing store for the CommandParameter bindable property. + + + + Backing store for the Command bindable property. + + + + Gets or sets the Font for the Label text. This is a bindable property. + The value for the button. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the button text is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the button text belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets or sets the size of the font of the button text. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the optional image source to display next to the text in the Button. This is a bindable property. + To be added. + To be added. + + + Backing store for the Image bindable property. + + + + Overriden + + + + The name of the changed property. + Call this method from a child class to notify that a change happened on a property. + A Button triggers this by itself. An inheritor only need to call this for properties without BindableProperty as backend store. + + + Gets or sets the Text displayed as the content of the button. This is a bindable property. + The text displayed in the button. The default value is . + Changing the Text of a button will trigger a layout cycle. + + + Gets or sets the for the text of the button. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Sends a click event. + To be added. + + + A Page that users can swipe from side to side to display pages of content, like a gallery. + + The provides a navigation experience that will feel natural and familiar to Windows Phone users. By using , application developers can provide customized navigation on a per-platform basis. For example, an application developer could use a for Android and iOS, and use a on Windows Phone. + + The following XAML example, when properly included and referenced in a Xamarin.Forms project, creates a that displays three simple elements: + + + + + + + + + + + + + + + +]]> + + + The following C# example creates a that displays three simple elements: + pages = new List (0); +Color[] colors = { Color.Red, Color.Green, Color.Blue }; +foreach (Color c in colors) { + pages.Add (new ContentPage { Content = new StackLayout { + Children = { + new Label { Text = c.ToString () }, + new BoxView { + Color = c, + VerticalOptions = LayoutOptions.FillAndExpand + } + } + } + }); +} + +MainPage = new CarouselPage { + Children = { pages [0], + pages [1], + pages [2] } +}; +]]> + + When embedding a CarouselPage into a , application developers should set to to prevent gesture conflicts between the CarouselPage and MasterDetailPage. + + + + + + + Initializes a new instance of the CarouselPage class. + + + + The object representing the model ofr the page. + Creates a default page, suitable for display in this, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Provides base class and capabilities for all Forms cells. Cells are elements meant to be added to or . + + The subtypes of are: + + + Type + Description + + + EntryCell + A with a label and a single line text entry field. + + + SwitchCell + A with a label and an on/off switch. + + + TextCell + A with primary and secondary text. + + + ImageCell + A that also includes an image. + + + ViewCell + A containing a developer-defined . + + + The various subclasses are shown in the following image: + + + + + + + The class has the following XAML properties: + + + Property + Value + + + ContextActions + + A list of objects to display when the user performs the context action. + + + + IsEnabled + + + or , indicating whether the animation for is displayed. + + + + + + + Initializes a new instance of the Cell class. + Cell class is abstract, this constructor is never invoked directly. + + + Occurs when the visual representation of the Cell is being added to the visual layout. + This method is raised before the cell is on screen. + + + Gets a list of menu items to display when the user performs the device-specific context gesture on the Cell. + The list of menu items that will be displayed when the user performs the device-specific context gesture on the Cell. + The context gesture on the iOS platform is a left swipe. For Android and Windows Phone operating systems, the context gesture is a press and hold. + + + Occurs when the visual representation of the Cell is being removed from the visual layout. + This method is for virtualization usage only. It is not gauranteed to fire for all visible Cells when the ListView or TableView is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Gets a value that indicates whether the cell has at least one menu item in its list property. + To be added. + To be added. + + + Gets or sets the height of the Cell. + A double that represents the height of the cell. + The property is ignored if the app developer sets the or property on the surrounding to . In that case, the or property is used instead. + + + Gets or sets the IsEnabled state of the Cell. This is a bindable property. + A bool. Default is . + + + + Identifies the IsEnabled bindable property. + + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Event that is raised when the binding context is changed. + To be added. + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Invoked whenever a long press is applied to the Cell. + + + + Invoked whenever the Cell is Tapped. + + + + Gets the height of the rendered cell on the device. + + + + + Occurs when the Cell is Tapped. + + + + To be added. + To be added. + To be added. + To be added. + Delegate for callback in . + To be added. + + + Class that represents a color and exposes it as RGBA and HSL values. + + This type is immutable. Colors can be expressed in the RGB or HSL modes. While the constructor takes R, G, B, and A values, the class also calculates and makes available HSL data for the color. + + In XAML, application developers can specify any property that is of type , for example, either as a XAML attribute or as a nested tag. The following code example shows how to specify the text color for a label by using an attribute: + + Hello, World! +]]> + The example below shows how to specify the text color for a label by using a nested tag: + + Hello, World! + Color.Blue +]]> + + Application developers can specify colors in XAML either as a hexadecimal number or as a valid color name. + When specifying a color with a hexadecimal number, app developers can use 3, 4, or 6 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". Finally, if the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". + When specifying a color with a string, app developers can use color name in isolation, or prefix it with "Color.". For example, both Purple and Color.Purple are valid ways to specify the color purple. The following table describes the valid color names that can be used to specify colors in XAML. +ColorShort NameRGB ValueColor.TransparentTransparent0, 0, 0 (With the alpha channel set to 0.)Color.AquaAqua0, 255, 255Color.BlackBlack0, 0, 0Color.BlueBlue0, 0, 255Color.FuchsiaFuchsia255, 0, 255Color.GrayGray128, 128, 128Color.GreenGreen0, 128, 0Color.LimeLime0, 255, 0Color.MaroonMaroon128, 0, 0Color.NavyNavy0, 0, 128Color.OliveOlive128, 128, 0Color.PurplePurple128, 0, 128Color.PinkPink255, 102, 255Color.RedRed255, 0, 0Color.SilverSilver192, 192, 192Color.TealTeal0, 128, 128Color.WhiteWhite255, 255, 255Color.YellowYellow255, 255, 0 + + + + The luminosity of the gray-scale color. + Initialize a new gray color. + This is equivalent to new Color (value, value, value). The value is clamped to [0-1]. App developers should use the equivalent methods, instead. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Initializes a new RGB color. + This is equivalent to new Color (r, g, b, 1). Values are clamped to [0-1]. Prefer the equivalent methods. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Initializes a new RGB color with an alpha channel. + Values are clamped to [0-1]. + + + Gets the alpha component of the color. + The Alpha component of the color as a double that is in the inclusive range [0-1]. + + + + Gets the accent or tint color from the application. + A Color. + The accent color is platform and device dependent. + + + The delta (positive or negative) to add to the luminosity channel. + Returns a new Color with a modified luminosity channel. + A new color with a possibly modified luminosity channel. + The parameter is added to the current luminosity, and the resulting luminosity is then clamped to the inclusive range [0,1]. + + + Aqua, the color that is represented by the RGB value #00ffff. + + + + Gets the blue component of the color. + The Blue component of the color as a double that is in the inclusive range [0-1]. + + + + Black, the color that is represented by the RGB value #000000. + + + + Blue, the color that is represented by the RGB value #0000ff. + + + + Returns the default color. + The default color. + The Default color is used to unset any Color, and revert to the default one. + + + The value to compare to this structure. + Determine if the provided is equivalent to the current Color. + + if the provided object is an equivalent Color. Otherwies, . + Overriden. + + + A string that contains the hexadecimal (A)RGB color representation. + Returns a new RGB Color instance with the requested Red, Green, and Blue channels. The Alpha channel is set if contains one. + A color. + + When specifying a color with a hexadecimal number, app developers can use 3, 4, 6, or 8 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". If the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". Finally, the developer can explicitly provide an 8-digit number that completely specifies the Alpha, Red, Green, and Blue channels, in that order. + Note that, in the paragraph above, the fully expanded color description is of the format, AARRGGBB. That is: the first pair of hexadecimal digits specifies the Alpha channel; the second pair specifies the Red channel; the third pair specifies the Green channel; and the final pair specifies the Blue channel. + + + + The Hue component of the color. + The Saturation component of the color. + The Luminosity component of the color. + The alpha value of the color. + Returns a new HSL Color with an alpha channel + An HSL color + + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + An RGB color + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + A new RGB color. + Component values are clamped to [0,255]. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b, a), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,255]. + + + A uint that represents the ARGB value of the color. + Returns a new Color with the requested RGBA value. + An RGBA color. + + The parameter must represent an unsigned integer that can be represented by hexadecimal string that matches the format "AARRGGBB". + + + + Fucshia, the color that is represented by the RGB value #ff00ff. + + + + Fucshia, the color that is represented by the RGB value #ff00ff. Deprecated. See Remarks. + Use the color, instead. + + + Gets the Green component of the color. + The Green component of the color as a double that is in the inclusive range [0-1]. + + + + Returns the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gray, the color that is represented by the RGB value #808080. + + + + Green, the color that is represented by the RGB value #008000. + + + + Gets the Hue of the color. + The Hue component of the color as a double that is in the inclusive range [0-1]. + + + + Lime, the color that is represented by the RGB value #00ff00. + + + + Gets the Luminosity fo the color. + The Luminosity component of the color as a double that is in the inclusive range [0-1]. + + + + Maroon, the color that is represented by the RGB value #800000. + + + + The alpha multiplicator. + Returns a new color with the alpha channel multiplied by alpha, clamped to the inclusive range [0-1]. + A new RGBA color with a possibly new value for its alpha channel. See Remarks. + The resulting color has its alpha channel clamped toto the inclusive range [0-1], preventing invalid colors. + + + Navy, the color that is represented by the RGB value #000080. + + + + Olive, the color that is represented by the RGB value #808000. + + + + To be added. + To be added. + Returns if represents the same color as . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same color as . + To be added. + To be added. + + + Pink, the color that is represented by the RGB value #ff66ff. + + + + Purple, the color that is represented by the RGB value #800080. + + + + Gets the Red component of the color. + The Red component of the color as a double that is in the inclusive range [0-1]. + + + + Red, the color that is represented by the RGB value #ff0000. + + + + Gets the Saturation of the color + The Saturation component of the color as a double that is in the inclusive range [0-1]. + + + + Silver, the color that is represented by the RGB value #c0c0c0. + + + + Teal, the color that is represented by the RGB value #008080. + + + + Returns a string representation of the Color. + A string. + Overriden. + + + The transparent color, represented by the RGB value #00000000. + The Alpha channel of the color is set to 0. + + + White, the color that is represented by the RGB value #ffffff. + + + + The modified Hue. + Returns a color with modified Hue, but keeping the same Saturation and Luminosity. + A color. + The Hue is clamped to the inclusive range [0,1]. This method is useful for creating color palettes. + + + The modified luminosity. + Returns a color with modified Luminosity. + A new HSL color. + The new Luminosity is clamped to [0,1]. This method is useful for creating color palettes. + + + The modified Saturation. + Returns a new color with modified Saturation. + A new HSLcolor. + The Saturation is clamped to [0,1]. This method is useful for creating color palettes. + + + Yellow, the color that is represented by the RGB value #ffff00.. + + + + A that converts from strings to a . + + The following example shows some variations of : + + + + + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + An that defines properties for a column in a . + + The class has the following XAML property: + + + Property + Value + + + Width + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute width. + + + + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Event that is raised when the size of the column is changed. + To be added. + + + Gets or sets the width of the column. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A for s. + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + + +]]> + + + + + Creates a new empty collection. + To be added. + + + Defines an implementation wrapping an . + + + The following example creates a new Command and set it to a button. + + + Debug.WriteLine ("Command executed")); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, +}; +]]> + + + More useful scenarios takes a parameter + + + Debug.WriteLine ("Command executed: {0}", o)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action<object> to execute when the Command is executed. + Initializes a new instance of the Command class. + The Action will be executed with a parameter. + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An Action<object> to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An used as parameter to determine if the Command can be executed. + Returns a indicating if the Command can be exectued with the given parameter. + + if the Command can be executed, otherwise. + + If no canExecute parameter was passed to the Command constructor, this method always returns . + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + Occurs when the target of the Command should reevaluate whether or not the Command can be executed. + + + + Send a + + + + An used as parameter for the execute Action. + Invokes the execute Action + + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + The Type of the parameter, + Defines an implementation wrapping a generic Action<T>. + + + The following example creates a new Command and set it to a button. + + + (s => Debug.WriteLine ("Command executed: {0}", s)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + + + + Base class for conditions. + To be added. + + + A layout constraint used by s. + To be added. + + + To be added. + Returns a object that constrains an element to . + To be added. + To be added. + + + To be added. + Returns a that is calculated from . + To be added. + To be added. + + + To be added. + Returns a object that constrains an element relative to its parent's size. + To be added. + To be added. + + + To be added. + To be added. + Returns a object that constrains an element relative to the parameter. + To be added. + To be added. + + + Defines a constraint relationship. + + The class has the following XAML properties: + + + Property + Value + + + Constant + + An optionally signed integer literal. + + + + ElementName + + The name of a source element against which to calculate the constraint. + + + + Factor + + A decimal literal in the range (0,1]. + + + + Property + + The name of the property on the source element to use in the constraint calculation. + + + + Type + + + Constant, RelativeToParent, or RelativeToView. + + + + + + + Creates a new with default values. + To be added. + + + Gets or sets the constant constraint value.. + To be added. + To be added. + + + Gets or sets the name of a source element against which to calculate the constraint. + To be added. + To be added. + + + Gets or sets the factor by which to scale a constrained dimension, relative to the source element. + To be added. + To be added. + + + Gets or sets name of the property on the source element to use in the constraint calculation. + To be added. + To be added. + + + To be added. + Returns a for this . + To be added. + To be added. + + + Gets or sets the constraint type. + To be added. + To be added. + + + Enumeration specifying whether a constraint is constant, relative to a view, or relative to its parent. + To be added. + + + A constant constraint. + + + A constraint that is relative to a parent element. + + + A constraint that is relative to a view. + + + A that converts from strings to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that displays a single view. + + This is a Page displaying a single View, often a container like a or . + + The example below is taken from he App.cs file that is contained in the default "Hello, Forms!" app. It uses a to display a label, which is a typical, though basic, use of the class. + + The FormsGallery sample, which can be found on the Sample Applications page, has a ContentPageDemoPage.cs file. This file contains a longer and more complicated example. + The class has the following XAML property: + + + + Property + Value + + + Content + + A list of objects that represent the visual content of the . This tag can be omitted, and the contents listed directly. + + + A ContentPage tag can be the root element of a XAML document. + + + + + + Initializes a new ContentPage instance. + + + + Gets or Sets the View element representing the content of the Page. + A subclass, or . + + + + Indicates the property of the type that is the (default) content property. + + XAML processor uses to determine the content property. + +Decorating types with ContentPropertyAttribute allows shorter XAML syntax. As + + has a ContentProperty attribute applied, this XAML is valid: + + +This is equivalent to the following, more explicit XAML + + + + + ]]> + + + + The name of the property. + Initializes a new instance of the ContentPropertyAttribute class. + + + + Gets the name of the content property + A string representing the name of the content property. + + + + An element that contains a single child element. + + The class has the following XAML property: + + + Property + Value + + + Content + + The object that represents the visual content of the . + + + + + The following example shows how to construct a new ContentView with a Label inside. + + + + + + + + + + + Initializes a new instance fo the ContentView class. + + + + Gets or sets the content of the ContentView. + A used as content. + + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + Positions and sizes the content of a ContentView. + + + + The available width for the ContentView to use + The available height for the ContentView to use. + This method is called during the measure pass of a layout cycle to get the desired size of the ContentView. + A which contains the desired size of the StackLayout. + The results of this method will be the desired size of its content. + + + A template for multiple bindings, commonly used by s, s, and s. + In XAML, application developers can nest markup inside a DataTemplate tag to create a whose members are bound to the properties of data objects that are contained in a list. + + + A custom content generator to be called + Creates and initializes a new instance of the class. + To be added. + + + To be added. + Creates a new for type . + To be added. + + + Gets a dictionary of bindings, indexed by the bound properties. + To be added. + To be added. + + + Loads the template for the type that is represented by this and sets all of the bindings and values. + To be added. + To be added. + + + To be added. + To be added. + Sets the binding for . + To be added. + + + To be added. + To be added. + Sets the value of . + To be added. + + + Returns a dictionary of property values for this , indexed by property. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + Gets or sets the parent element of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + + + + + + + + + Class that represents a binding condition and a list of objects that will be applied when the condition is met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Value + + The value of the property that will trigger the setters in Setters. + + + + Setters + + A list of setters that are called when the property condition is met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the binding whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the binding that is named by the property becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the binding, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + XAML infrastructure. + To be added. + To be added. + + + Event arguments for event. + To be added. + + + To be added. + To be added. + Creates a new object that represents a change from to . + To be added. + + + The date that the user entered. + To be added. + To be added. + + + The date that was on the element at the time that the user selected it. + To be added. + To be added. + + + A that allows date picking. + + The visual representation of a DatePicker is very similar to the one of , except that a special control for picking a date appears in place of a keyboard. + + + + The following example shows a basic use: + + + + The class has the following XAML properties: + + + Property + Value + + + Format + + A string that specifies the display format in the control of the chosen date. + + + + Date + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MinimumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MaximumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + + The example below creates a working that displays the current date and allows the user to select a date between the specified ranges. The value for the property is specified with the x:Static markup extension, and the and properties are specified by calling the method with the x:FactoryMethod and x:Arguments tags. The example below requires a namespace declaration in the root ContentPage or ContentView tags. In particular, xmlns:sys="clr-namespace:System;assembly=mscorlib" must appear in the attribute list for the root element, so that the XAML parser can resolve the name, sys:DateTime. + + + yyyy-MM-dd + + + + Jan 1 2000 + + + + + + + Dec 31 2050 + + + + + ]]> + + + + + Initializes a new instance of the DatePicker class. + + + + Gets or sets the displayed date. This is a bindable property. + The displayed in the DatePicker. + + + + Identifies the Date bindable property. + + + + An event fired when the Date property changes. + + + + The format of the date to display to the user. This is a dependency property. + A valid date format. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format dependency property. + + + + The highest date selectable for this DatePicker. This is a bindable property. + The maximum selectable for the DateEntry. Default December 31, 2100. + + + + Identifies the MaximumDate bindable property. + + + + The lowest date selectable for this DatePicker. This is a bindable property. + The minimum selectable for the DateEntry. Default January 1, 1900. + + + + Identifies the MinimumDate bindable property. + + + + To be added. + A collection parameterized by an . Base class for and . + + Objects of type are parameterized with a type of . + + + + + + + The to add. + Adds a to the collection. + To be added. + + + Removes all values from this . + To be added. + + + The to check for in this . + Returns a Boolean value that indicates whether or not this contains the specified . + To be added. + To be added. + + + To be added. + To be added. + Copies instances from this to an array, starting at the specified index. + To be added. + + + Gets the number of instances contained in this . + To be added. + To be added. + + + Returns an enumerator that iterates through the instances in this . + To be added. + To be added. + + + The instance to find. + Returns the index of the first occurrence of in this . + To be added. + To be added. + + + The position at which to insert . + The to insert. + Inserts a into this at the location that is specified by . + To be added. + + + + . instances can have items added to them and removed from them. + + + + To be added. + + + The location of the item to get or set. + Gets or sets the value indexed by . + To be added. + To be added. + + + Event that is raised when the display size of item in the collection changes. + To be added. + + + The to remove from this . + Removes a from this and returns if the item was removed. + + if was in this and was therefore removed. if was not in this . + To be added. + + + The location in this from which to remove an instance. + Removes an item from this . + To be added. + + + Gets an enumerator that can be used to iterate over the instances in this . + To be added. + To be added. + + + An attribute that indicates that the specified type provides a concrete implementation of a needed interface. + To be added. + + + To be added. + Creates a new with default values. + To be added. + + + Enumeration specifying whether should return a reference to a global or new instance. + + The following example shows how can be used to specify a new instance: + + (DependencyFetchTarget.NewInstance); + ]]> + + + + + Return a global instance. + + + Return a new instance. + + + Static class that provides the factory method for retrieving platform-specific implementations of the specified type T. + To be added. + + + To be added. + To be added. + Returns the platform-specific implementation of type T. + To be added. + To be added. + + + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + To be added. + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + An utility class to interract with the current Device/Platform. + + + + The Action to invoke + Invokes an Action on the device main (UI) thread. + + This example show how to set the Text of Label on the main thread, e.g. in response to an async event. + + + { + label.Text = "Async operation completed"; +}); + ]]> + + + + + To be added. + To be added. + Returns a double that represents the named size for the font that is used on the element on the native platform. + To be added. + To be added. + + + To be added. + To be added. + Returns a double that represents a font size that corresponds to on . + To be added. + To be added. + + + Gets the kind of device Forms is currently working on. + A representing the device type. + + + + (optional) The Action to execute on iOS. + (optional) The Action to execute on Android. + (optional) The Action to execute on WinPhone. + (optional) The Action to execute if no Action was provided for the current OS. + Executes different Actions depending on the Forms is working on. + + This example show how to change the font of a Label on a single OS. + + + label.Font = Font.OfSize ("HelveticaNeue-UltraLight", NamedSize.Large)); + ]]> + + + + + The type of the value to be returned. + The value for iOS. + The value for Android. + The value for WinPhone. + Returns different values depending on the Forms is working on. + The value for the current OS. + + This example show how to use different heights for a Button on different OS. + + + + + + + + The to open. + Request the device to open the Uri. + This often navigates out of the application. + + + Gets the indicating the OS Forms is working on. + A indicating the current OS. + + + + The interval between invocations of the callback. + The action to run when the timer elapses. + Starts a recurring timer using the device clock capabilities. + While the callback returns the timer will keep recurring. + + + Class that exposes device-specific styles as static fields. + To be added. + + + The device-specific body style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific caption style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for detail text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific subtitle style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific title style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + Functions that modify values non-linearly, generally used for animations. + + Easing functions are applied to input values in the range [0,1]. The cubic easing functions are often considered to look most natural. + If developers wish to use their own easing functions, they should return a value of 0 for an input of 0 and a value of 1 for an input of 1 or the animation will have a jump. + The predefined functions have the following forms: + + + Member + Graph + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To be added. + Creates a new object with the function. + To be added. + + + Jumps towards, and then bounces as it settles at the final value. (Note: Known bug in 1.0.0 release) + + NOTE: The 1.0.0. release of has a known bug and runs backwards. The following graph shows the desired behavior, shortly to be released: + + + + + + + Leaps to final values, bounces 3 times, and settles. + + + + + + + + Starts slowly and accelerates. + + + + + + + + Accelerates and decelerates. Often a natural-looking choice. + + + + + + + + Starts quickly and the decelerates. + + + + + + + + A value in the range [0,1] to which the easing function should be applied. + Applies the easing function to the specified value . + The value of the easing function when applied to the value . + To be added. + + + Linear transformation. + + + + + + + + An easing function. + Converts a function into an . + An for the . + + An easing function should return a value of (or near) 0 at 0 and 1 (or near) for 1. + + + + Smoothly accelerates. + + + + + + + + Accelerates in and out. + + + + . + + + Smoothly decelerates. + + + + + + + + Moves away and then leaps toward the final value. + + + + + + + + Overshoots and then returns. + + + + + + + + A control that can edit multiple lines of text. + + For single line entries, see . + + + + + + + Initializes a new instance of the Editor class. + + + The following example creates a Editor with a Chat keyboard that fills the available space. + + + + + The class has the following XAML propertY: + + + Property + Value + + + Text + + The initial text that will appear in the editor. + + + + + + + Event that is fired when editing has completed. + iOS (Unfocusing the editor or pressing "Done" triggers the event). Android / Windows Phone (Unfocusing the Editor triggers the event) + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is null. + Setting this property will cause the event to be emitted. + + + Occurs when the text of the Editor changes. + + + + Identifies the Test bindable property. + + + + Provides the base class for all Forms hierarchal elements. This class contains all the methods and properties required to represent an element in the Forms hierarchy. + + The following diagram shows the classes derived from . + + + + The diagram shows some important categories: + + + Class + Description + + + + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + + + + + Cells are elements meant to be added to or . + + + + + + A that occupies most or all of the screen and contains a single child. + + + + + + + have a single child of type , while subclasses of have a collection of multiple children views, including other layouts. + + + + Controls and specialized s + + The lower part of the diagram shows the Xamarin.Forms classes for universally-available controls, such as s and s. + + + + + + Protected constructor used to initialize a the element. + To be added. + + + Occurs whenever a child element is added to the element. + To be added. + + + Occurs whenever a child element is removed from the element. + To be added. + + + Gets or sets a value used to identify a collection of semantically similar elements. + A string that represents the collection the element belongs to. + Use the class id property to collect together elements into semantically similar groups for identification in ui testing and in theme engines. + + + Identifies the ClassId bindable property. + To be added. + + + Occurs whenever a child element is added to the elements subtree. + To be added. + + + Occurs whenever a child element is removed from the elements subtree. + To be added. + + + Gets a value that can be used to uniquely identify an element through the run of an application. + A Guid uniquely identifying the element. + This value is generated at runtime and is not stable across runs of your app. + + + Invoked whenever the binding context of the element changes. Implement this method to add class handling for this event. + Implementors must call the base method. + + + The element that was added. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + The element that was removed. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + Implementors must call the base method. + + + Gets or sets the parent element of the element. + The element which should be the parent of this element. + Most application authors will not need to set the parent element by hand. + + + Gets the element which is the closest ancestor of this element that is a . + The closest ansestor which is a . + Convenient way of accessing the nearest ancestor of an element which is actually represented on screen visually. If this element is a visual element, its bounds are relative to its ParentView. + + + The BindableProperty from which to remove the DynamicResource. + Removes a previously set dynamic resource + + + + The BindableProperty. + The key of the DynamicResource + Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key. + + + + Gets or sets a user defined value to uniquely identify the element. + A string uniquely identifying the element. + Use the StyleId property to identify individual elements in your application for identification in ui testing and in theme engines. + + + To be added. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + The identifier of the being sought. + Finds an object previously registered with . + The Object previously associated with by a call to . Raises a if this is not in an . + To be added. + + + To be added. + To be added. + Internal use only. + To be added. + + + Identifier to be used with the . + Object to be associated with the . + Within an , creates an association between and . + To be added. + + + The identifier to be removed. + Removes from an . + To be added. + + + Provides data for events pertaining to a single . + + + + + + + + The element relevant to the event. + Constructs and initializes a new instance of the class. + + + + Gets the element relevant to the event. + The element relevant to the event. + + + + A control that can edit a single line of text. + + Entry is a single line text entry. It is best used for collecting small discrete pieces of information, like usernames and passwords. + + + The following example creates a new username and password set of entries. + + + The FormsGallery sample, which can be found on the Sample Applications page, has an EntryDemoPage.cs file. This file contains a longer and more complicated example. + + The class has the following XAML properties: + + + Property + Value + + + IsPassword + + true to indicate that the is a password field. Otherwise, false. + + + Placeholder + The default text that will appear in the control. + + + Text + + The initial text that will appear in the entry. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + + + + Initializes a new instance of the Entry class. + + + + Occurs when the user finalizes the text in an entry with the return key. + This finilaization will usually but not always be accompanied by IsFocused being set to false. + + + Gets or sets a value that indicates if the entry should visually obscure typed text. This is a bindable property. + + if the element is a password box; otherwise, . Default value is . + Toggling this value does not reset the contents of the entry, therefore it is advisable to be careful about setting IsPassword to false, as it may contain sensitive information. + + + Identifies the IsPassword bindable property. + + + + Gets or sets the placeholder text shown when the entry is null or empty. This is a bindable property. + The placeholder text shown when is null or empty. The default value is . + + + + Identifies the Placeholder bindable property. + + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is . + Setting this property will cause the event to be emitted. + + + Event that is raised when the text in this element is changed. + To be added. + + + Gets or sets the for the text of the Entry. This is a bindable property. + The of the text. + + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + A with a label and a single line text entry field. + + The following example shows a basic use. + + + + The class has the following XAML properties: + + + Property + Value + + + Keyboard + A property name that indicates which keyboard to present to the user when editing text. + + + Label + + The text that is presented next to the entry area in the . + + + + LabelColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + The default text that will appear in the control when it is empty. + + + Text + + The initial text that will appear in the editor. + + + + XAlign + + + Center, End, or Start, to indicate the placement of the text that is entered by the user. + + + + + + + + + + Initializes a new instance of the EntryCell class. + + + + Event fired when the user presses 'Done' on the EntryCell's keyboard + + + + Gets or sets the Keyboard to display while editing the EntryCell. This is a bindable property. + A representing the keyboard kind. Default is . + + + + Identifies the Keyboard bindable property. + + + + Gets or sets the fixed text presented next to the Entry in the EntryCell. This is a bindable property. + A . + + + + Gets or sets the Color used for rendering the Label property. This is a bindable property. + Default is Color.Default. + + + + Identifies the LabelColor bindable property. + + + + Identifies the Label bindable property. + + + + Gets or sets the placeholder text displayed in the Entry when the Text is null or empty. This is a bindable property. + + + + + Identifies the Placeholder bindable property, + + + + Gets or sets the content of the Entry of the EntryCell. This is a bindable property. + + + + + Identifies the Text bindable property. + + + + Gets or sets the horizontal alignement of the Text property. This is a bindable property. + Default is . + + + + Identifies the XAlign bindable property. + + + + Class that represents a triggering event and a list of objects that will be invoked when the event is raised. + + The class has the following XAML property: + + + Property + Value + + + Event + + The name of the event to which to respond. + + + + Object name + + The qualified name of a implementation that has been defined by the application developer. This object is instantiated and its method is called when the triggering event is raised. Attributes on this tag set corresponding proptery values on the implementation before the method is called. + + + + + + Creates a new instance. + + + + Gets the list of objects that will be invoked when the event that is identified by the property is raised. + + + + + Gets or sets the name of the event that will cause the actions that are contained in the to be invoked. + + + + + Internal. + + + + Internal. + + + + An that reads an image from a file. + To be added. + + + Creates a new object with default values. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. + Overriden for FileImageSource. FileImageSource are not cancellable, so this will always returns a completed Task with as Result. + + + Gets or sets the file from which this will load an image. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed. + To be added. + + + To be added. + Allows implicit casting from a string. + To be added. + To be added. + + + To be added. + Allows implicit casting to a string. + To be added. + To be added. + + + Event args for 's and events. + + + + The who's focused was changed. + Whether or not the was focused. + Constructs and initializes a new instance of the class. + + + + Gets whether or not the was focused. + + if the view was focused, otherwise. + + + + Gets the who's focused was changed. + The who's focused was changed. + + + + The font used to display text. + The available fonts, and the matching between and real displayed fonts is device-dependent. + + + The desired font size. + Returns a font instance that represents the default bold font, in the requested size, for the device. + The requested bold . + + + + The desired font . + Returns an usable font instance representing the default bold font, in the requested NamedSize, for the device. + The requested bold . + + + + Gets the default font for the device. + The default font for the device. + To be added. + + + The value to compare this font to. + Determine if the provided is equivalent to the current Font. + + if the provided object is an equivalent font. otherwise. + Overriden. + + + Gets a value that indicates whether the font is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which this font belongs. + The font family to which this structure belongs. + To be added. + + + Gets the size of the font. + A that indicates the size of the font. + To be added. + + + Get the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gets the named font size, such as "Large" or "Small". + To be added. + To be added. + + + The name of the targeted system font. + The desired font size. + Returns a structure with the requested font and size. + A instance. + Font availability is platform- and device-dependent. + + + The name of the targeted system font. + The desired font . + Returns an usable , with the requested font and NamedSize. + A Font instance. + Font availability is platform and device dependent. + + + To be added. + To be added. + Returns if represents the same font that represents. Otherwise, . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same font that represents. Otherwise, . + To be added. + To be added. + + + The desired font size. + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested . + + + + The desired font . + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested bold . + + + + The requested font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + The requested named font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + Returns a string representation of this font structure. + A string representation of this structure. + The method returns a string that contains a labeled, comma-separated list of the , , , and properties. + + + Gets a value that indicates whether the target operating system should use size that is specified by the property. + To be added. + To be added. + + + Whether the font is italic, bold, or neither. + Returns a new font structure with the specified attributes. + A new structure with the attributes that were specified with . + To be added. + + + The requested font size. + Returns a new font structure with the size that was specified with . + To be added. + To be added. + + + The requested named font size. + A new structure with the size that was specified with . + To be added. + To be added. + + + Enumerates values that describe font styles. + To be added. + + + The font is bold. + + + The font is italic. + + + The font is unmodified. + + + Converts a string into a font size. + To be added. + + + Initializes a new object. + To be added. + + + To be added. + Returns a value that indicates if the source type can be converted to a font size. + To be added. + To be added. + + + To be added. + To be added. + Converts an object into a font size. + To be added. + To be added. + + + A that converts from strings to . + String should be formatted as "[name],[attributes],[size]" there may be multiple attributes, e.g. "Georgia, Bold, Italic, 42" + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Represents a text with attributes applied to some parts. + + + + Initializes a new instance of the FormattedString class. + To be added. + + + To be added. + Cast the FormattedString to a string, stripping all the attributes. + To be added. + To be added. + + + To be added. + Cast a string to a FromattedString that contains a single span with no attribute set. + To be added. + To be added. + + + Event that is raised when a bound property is changed. + To be added. + + + Gets the collection of spans. + To be added. + To be added. + + + Returns the text of the formatted string as an unformatted string. + To be added. + To be added. + + + An element containing a single child, with some framing options. + + Frame have a default of 20. + + The following example shows how to construct a new Frame with an Outline color. + + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasShadow + + + true or false, to indicate whether to show a shadow effect where the platform supports it. + + + + OutlineColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + Initializes a new instance of the Frame class. + A Frame has a default of 20. + + + Gets or sets a flag indicating if the Frame has a shadow displayed. This is a bindable property. + A indicating whether or not the Frame has a shadow. Default is . + + + + Identifies the HasShadow bindable property. + + + + Gets or sets the color of the border of the Frame. This is a bindable property. + A representing the border Color. Default is . + + + + Identifies the OutlineColor bindable property. + + + + The base class for all gesture recognizers. + + + + The parent element of the gesture recognizer. + An element from which the binding context will be inherited. + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying the various states of a gesture. + To be added. + + + The gesture has begun and has not ended, failed, or been cancelled. + + + The gesture was cancelled. + + + The gesture has ended. + + + The gesture was not recognized. + + + The gesture is in progress and may still become recognizable.. + + + The gesture state is being updated. + + + A layout that arranges views in rows and columns. + + + The following example shows a basic use: + + + The following shows Grids on the various platforms: + + + + It is convenient for the layout class arranges to store row and column indices of each of its child elements. Additionally, when a element is laid out with a grid, application developers can access and change the child's position and span from the child itself by using the , , , , static methods, and the equivalent static methods for columns and column spans. + The class has the following XAML properties. + + + Property + Value + + + Children + + Nested visual elements that are displayed in the Grid. + + + + ColumnDefinitions + + A list of ColumnDefinition specifications. See . + + + + ColumnSpacing + An integer. + + + RowDefinitions + + A list of RowDefinition specifications. See . + + + + RowSpacing + + An integer. + + + + The class has the following XAML attached properties. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + ColumnSpan + An integer that represents the number of Columns that the item will span. + + + Row + + An integer that represents the row in which the item will appear. + + + + RowSpan + + An integer that represents the number of rows that the item will span. + + + + The documentation for the following member methods contains XAML syntax examples: + + + + + Initializes a new instance of the Grid class. + + + + Gets the collection of child elements of the Grid. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the Grid class. + + + + Provides the interface for the bound property that gets or sets the ordered collection of objects that control the layout of columns in the . + A ColumnDefinitionCollection for the Grid instance. + + ColumnDefinitions is an ordered set of ColumnDefinition objects that determine the width of each column. Each successive ColumnDefintion controls the width of each successive column. If ColumnDefinitions is empty, or if there are more columns than definitions, then columns for which there is no definition are rendered as if they were controlled by a ColumnDefinition object that has its property set to . + The property has XAML syntax support. The syntax for this operation is shown below. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the zero-based column index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Provides the interface for the bound property that gets or sets the distance between columns in the Grid. + The space between columns in this layout. + + The property does not control spacing on the left and right edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of columns that a child element spans. See Remarks. + + The interface for this property is defined by the and methods. + + + + An element that belongs to the Grid layout. + Gets the column of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Column attached property. + + + + An element that belongs to the Grid layout. + Gets the column span of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the number of Columns that the item will span. + + + + The remarks for the method contain syntax for and information about the ColumnSpan attached property. + + + + An element that belongs to the Grid layout. + Gets the row of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Row attached property. + + + + An element that belongs to the Grid layout. + Gets the row span of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached properties: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + The remarks for the method contain syntax for and information about the RowSpan attached property. + + + + Invalidates the grid layout. + To be added. + + + X-coordinate of the top left corner of the bounding rectangle. + Y-coordinate of the top left corner of the bounding rectangle. + Width of the bounding rectangle. + Height of the bounding rectangle. + + Lays out the child elements when the layout is invalidated. + + To be added. + + + The element that was added. + Method that is called when a child is added to this element. + + + + The element that was removed. + Method that is called when a child is removed from this element. + To be added. + + + The requested width. + The requested height. + Method that is called when an attempt is made to resize this element. + + The new requested size. + + To be added. + + + Provides the interface for the bound property that gets or sets the collection of RowDefinition objects that control the heights of each row. + A RowDefinitionCollection for the Grid instance. + + RowDefinitions is an ordered set of objects that determine the height of each column. Each successive RowDefintion controls the width of each successive column. If RowDefinitions is empty, or if there are more rows than definitions, then rows for which there is no definition are rendered as if they were controlled by a RowDefinition object that has its property set to . + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + To be added. + + + Implements the attached property that represents the zero-based row index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Gets or sets the amount of space left between rows in the Grid. This is a bindable property. + The space between rows + + The property does not control spacing on the top and bottom edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of rows that a child element spans, and allows the class to bind it to properties on other objects at run time. + + The interface for this property is defined by the and methods. + + + + A child element of this Grid to move to a different column. + The column in which to place the child element. + Changes the column in which a child element will be placed. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the Column in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new column span. + The new column span. + Changes the column span of the specified child element. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the number of Columns that the item will span. + + + + + + + A child element of this Grid to move to a different row. + The row in which to place the child element. + Changes the row in which a child element will be placed. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new row span. + The new row span. + Changes the row span of the specified child element. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + + + + The type of elements in the grid. + List interface with overloads for adding elements to a grid. + + + + The view to add. + The column to add the view to. + The row to add the view to. + Adds a view to the List at the specified location with a RowSpan and HeightSpan of 1. + + + + The view to add. + The left edge of the column span. Must be greater than 0. + The right edge of the column span. Must be greater than left. + The top edge of the row span. Must be greater than 0. + The bottom edge of the row span. Must be greater than top. + Adds a view to the List at the specified row and column spans. + + + + The views to add. + Add a collection views to the List such that they are horizontally stacked to the right of the current contents of the Grid. + The final span of each view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is horizontally stacked to the right of the current contents of the Grid. + The final span of the view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The views to add. + Add a collection views to the List such that they are vertically stacked below the current contents of the Grid. + The final span of each view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is vertically stacked below the current contents of the Grid. + The final span of the view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + Used to define the size (width/height) of Grid ColumnDefinition and RowDefinition. + + GridLength of type GridUnitType.Absolute represents exact size. The ones of type GridUnitType.Auto adapts for fitting the size of the elements in the gird column/row. GridLenght of type GridUnitType.Star are used to split the available size in proportional buckets. + This valuetype is readonly. + + + + To be added. + Initializes a new Absolute GridLength. + This is striclty equivalent to new GridLength (value, GridUnitType.Absolute). + + + The size of the GridLength. + The GridUnitType (Auto, Star, Absolute) of the GridLength. + Initializes a new GridLength. + + + + A ready to reuse GridLength of GridUnitType.Auto. + + Value has no meaning for GridLength ot type GridUnitType.Auto. + + + A GridLength to compare to. + Test the equality of this GridLength and another one. + true is the GridLength are equal. False otherwise. + + + + Returns a value that is used for efficient storage of this object in collections. + To be added. + overriden. + + + Gets or sets the GridUnitType of the GridLength + The GridUnitType of the GridLength + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Absolute. + true if the GridUnitType of the GridLength is GridUnitType.Absolute + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Auto. + true if the GridUnitType of the GridLength is GridUnitType.Auto + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Star. + true if the GridUnitType of the GridLength is GridUnitType.Star + + + + The absolute size + Casting operator to convert a double into a GridLength of type GridUnitType.Absolute + A GridLength of type GridUnitType.Absolute and of size absolutesize + + + + Gets the Value of the GridLength. + The value in GridUnitType of the GridLength. + + + + A that converts from strings to s. + + The following example shows some uses of : + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Enumerates values that control how the property is interpreted for row and column definitions. + To be added. + + + Interpret the property value as the number of device-specific units. + To be added. + + + Ignore the property value and choose a size that fits the children of the row or column. + To be added. + + + Interpret the property value as a proportional weight, to be laid out after rows and columns with or are accounted for. + After all the rows and columns of type and are laid out, each of the corresponding remaining rows or columns, which are of type , receive a fraction of the remaining available space. This fraction is determined by dividing each row's or column's property value by the sum of all the row or column property values, correspondingly, including its own. + + + An abstract attribute whose subclasses specify the platform-specific renderers for Xamarin.Forms abstract controls. + To be added. + + + To be added. + To be added. + Creates a new object that maps events from to . + To be added. + + + Returns a Boolean value that indicates whether the runtime should automatically register the handler for the target. + To be added. + To be added. + + + A WebViewSource bound to an HTML-formatted string. + To be added. + + + Creates a new empty object with default values. + To be added. + + + The base URL for the source HTML document. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + The HTML content. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Defines an interface for elements that can be animated. + To be added. + + + Implement this method to begin a batch of animations that have been committed. + To be added. + + + Implement this method to commit a batch of animations so that they can be run with the method. + To be added. + + + Interface defining the type of and . + + Objects of type are parameterized with a type of . + + + + + + + Event that is raised when the size of the row or column changes. + To be added. + + + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + Sets a bound property value from a renderer without breaking the binding. + To be added. + + + The base interface all gesture recognizers must implement. + This interface is currently empty, this will likely change. + + + Interface indicating layout behavior and exposing the event. + To be added. + + + Event that is raised when the layout changes. + To be added. + + + + that holds an image. + + + The following example creates a new image from a file + + + + + The FormsGallery sample, which can be found on the Sample Applications page, has a ImageDemoPage.cs file. This file contains a longer and more complicated example. + + + + Initializes a new instance of the Image class. + + + The following example creates a new image from a file + + + + + + + + Gets or sets the scaling mode for the image. This is a bindable property. + A representing the scaling mode of the image. Default is . + + + + Identifies the Aspect bindable property. + + + + Gets the loading status of the image. This is a bindable property. + A indicating if the image is loadin. Default is false. + + + The following example illustrates running a to indicate that the image is loading: + + + + + + + Identifies the IsLoading bindable property. + This bindable property is readonly. + + + Gets or sets the opacity flag for the image. This is a bindable property. + A indicating the value for the property. Default is false. + If true, you'll be able to see through transparent parts of the image. + + + Identifies the IsOpaque bindable property. + + + + Invoked when the BindingContext changes. + Overriden for Image. + + + The name of the property. + Invoked when a property has changed. + Overriden for Image. + + + The name of the property. + Invoked when a property will change. + Overriden for Image. + + + The available width. + The available height. + Invoked when the layotu cycle request the element desired size. + + Overriden for Image. + + + Gets or sets the source of the image. This is a bindable property. + An representing the image source. Default is null. + + + + Identifies the Source bindable property. + + + + A that has an image. + + + objects are used to place images and accompanying text into a table. + + The following example shows a basic use. + + + + + + + + + Initializes a new instance of the ImageCell class. + + + + Gets or sets the ImageSource from which the Image is loaded. This is a bindable property. + + + + + Identifies the ImageSource bindable property. + + + + Overriden.. + + + + Abstract class whose implementors load images from files or the Web. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. The result of the Task indicates if the Task was successfully cancelled. + Calling Cancel() multiple times will throw an exception. + + + Gets the CancellationTokenSource. + + Used by inheritors to implement cancellable loads. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A string representing the id of the EmbeddedResource to load. + Creates an ImageSource for an EmbeddedResource included in the Assembly from which the call to FromResource is made. + A newly created ImageSource. + + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A bool indicating if the source was cancelled. + Called by inheritors to indicate the end of the loading of the source. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate the beginning of a loading operation. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate that the source changed.. + To be added. + + + To be added. + Allows implicit casting from a string that represents an absolute URI. + To be added. + To be added. + + + To be added. + Allows implicit casting from objects that were created with an absolute URI. + To be added. + To be added. + + + Gets or sets the element to which this object belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Interface abstracting platform-specific navigation. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + The page to add. + The existing page, before which will be inserted. + Inserts a page in the navigation stack before an existing page in the stack. + To be added. + + + Gets the modal navigation stack. + To be added. + To be added. + + + Gets the stack of pages in the navigation. + To be added. + To be added. + + + Asynchronously removes the most recent from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the most recent from the navigation stack, with optional animation. + To be added. + To be added. + + + Asynchronously dismisses the most recent modally presented . + An awaitable Task<Page>, indicating the PopModalAsync completion. The Task.Result is the Page that has been popped. + + The following example shows PushModal and PopModal usage: + + + + + Application developers must the result of and . Calling may cause a deadlock if a previous call to or has not completed. + + + + + To be added. + Asynchronously dismisses the most recent modally presented , with optional animation. + To be added. + To be added. + + + Pops all but the root off the navigation stack. + A task representing the asynchronous dismiss operation. + To be added. + + + To be added. + Pops all but the root off the navigation stack, with optional animation. + To be added. + To be added. + + + The to be pushed on top of the navigation stack. + Asynchronously adds a to the top of the navigation stack. + A task representing the asynchronous dismiss operation. + + + The following example shows and usage: + + + + + + + + To be added. + To be added. + Asynchronously adds a to the top of the navigation stack, with optional animation. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + + The following example shows PushModalAsync and PopModalAsync usage: + + + + + + + To be added. + To be added. + Presents a modally, with optional animation. + To be added. + To be added. + + + To be added. + Removes the specified page from the navigation stack. + To be added. + + + The base class of a view which can take keyboard input. + The constructor of this class is internal. Forms does not provide any renderer for InputView base class. + + + Gets or sets the Keyboard for the InputView. This is a bindable property. + The to use for the InputView. + + + + Identifies the Keyboard bindable property. + + + + To be added. + Interface defining a container for s and exposing a property. + To be added. + + + Gets the current page. + To be added. + To be added. + + + Interface defining the abstraction of a native platform. + To be added. + + + The binding context for the native platform. + To be added. + To be added. + + + Event that is raised when the binding context changes. + To be added. + + + The platform engine, useful for getting the screen size and for finding out if the paltform supports 3D. + To be added. + To be added. + + + Gets the root page of the platform. + To be added. + To be added. + + + To be added. + Sets the root page of the platform. + To be added. + + + Interface defining a native platform rendering engine. + To be added. + + + To be added. + To be added. + To be added. + Performs a size request on the native platform. + To be added. + To be added. + + + Gets a Boolean value that indicates whether the native platform supports 3D graphics. + To be added. + To be added. + + + Internally-used flagging interface indicating types that can be registered with . + To be added. + + + The type of visual that the items will be templated into. + A base class for a view that contains a templated list of items. + + + This class is used as a base class for views that wish to take in a list of user objects and produce views for each of them to be displayed, such as . The generic + argument is used to specify the type of visual that the view expects. In the case of , only subclasses are accepted, so that's + what it provides as its argument. + + + + + The user object + Creates a default instance for . + An instance of the class. + + This method is called by the templating system when is . + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + Gets or sets the source of items to template and display. + To be added. + + While any implementer is accepted, any that do not implement or + (where T is a class) will be converted to list by iterating. + If your collection implements , any changes raised from the event on this interface will be reflected in the items view. Note that if the event + is raised on another thread the main thread, the results will be unpredictable depending on the platform. To safely modify your collection (and raise the event) from another thread, call + to enable proper synchronization of access to the thread. + + + + Identifies the property. + + + + Gets or sets the to apply to the . + The for the , or + + The ItemTemplate is used to define the visual appearance of objects from the . Through + the item template you can set up data bindings to the user objects supplied to automatically fill in the visual and respond to any changes in the user + object. + If the item template is , is called and the result is used as the visual. + + In this example, a template for a is created for a simple user object. + + + + + + + + + Identifies the property. + + + + The visual content to setup. + The index of the content. + Performs any additional setup for the content at creation time. + + This method is called when the is creating visuals for user items. At this point, + the will have been set. You can override this method to perform additional setup + for content specific to your subclass. , for example, uses + this method to set to itself. + + + + To be added. + Creates a default TVisual by using + To be added. + To be added. + + + To be added. + To be added. + Configures . + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + To be added. + Creates a new object for the specified that was tapped and the to which it belongs. + To be added. + + + The collection of elements to which the tapped item belongs. + To be added. + To be added. + + + The visual element that the user tapped. + To be added. + To be added. + + + Event args when an items visiblity has been changed in a . + + + + The modified item. + Initializes a new instance of the ItemVisibilityEventArgs class with the item whose visibility has changed. + + + + The item from the whose visibility has changed. + An object. + + + + Interface defining methods for two-way value conversion between types. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert to by using and . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert back from by using and . + To be added. + To be added. + + + To be added. + The type of element that can be added to the container. + + + + The children collection of a visual element. + The collection containing the visual elements children. + + + + Contains methods that set values from renderers on bound properties without breaking the binding. + To be added. + + + Method that is called when the native size of a visual element changes. + To be added. + + + When implemented in a renderer, called to invalidate the layout when the native size of a visual element changes. + To be added. + + + Default keyboard and base class for specialized keyboards, such as those for telephone numbers, email, and URLs. + To be added. + + + Gets an instance of type "ChatKeyboard". + To be added. + To be added. + + + To be added. + Returns a new keyboard with the specified . + To be added. + To be added. + + + Gets an instance of type "Keyboard". + To be added. + To be added. + + + Gets an instance of type "EmailKeyboard". + To be added. + To be added. + + + Gets an instance of type "NumericKeyboard". + To be added. + To be added. + + + Gets an instance of type "TelephoneKeyboard". + To be added. + To be added. + + + Gets an instance of type "TextKeyboard". + To be added. + To be added. + + + Gets an instance of type "UrlKeyboard".. + To be added. + To be added. + + + Flagging enumeration for Keyboard options such as Capitalization, Spellcheck, and Suggestions. + To be added. + + + Capitalize the first words of sentences, and perform spellcheck and offer suggested word completions on text that the user enters. + + + Capitalize the first words of sentences. + + + Perform spellcheck on text that the user enters. + + + Offer suggested word completions on text that the user enters. + + + A that converts a string into a . + + The following XAML snippet illustrates a case where a KeyboardTypeConverter is used behind the scenes: + + + ]]> + + The following shows some examples of forms: + + { + {"Keyboard.Default", Keyboard.Default}, + {"Keyboard.Email", Keyboard.Email}, + {"Keyboard.Text", Keyboard.Text}, + {"Keyboard.Url", Keyboard.Url}, + {"Keyboard.Telephone", Keyboard.Telephone}, + {"Keyboard.Chat", Keyboard.Chat}, +}) +Assert.AreSame (kvp.Value, converter.ConvertFrom (kvp.Key)); + ]]> + + + + + Initializes a new instance of the KayboardTypeConverter class. + + + + The type of the object. + Returns wheher this converter can convert an object of the given type. + + if the KeyboardTypeConverter can convert from sourceType. otherwise. + This method only returns is sourceType is . + + + The Culture fo the value parameter. + The object to convert from. + TConvert the given value into a Keyboard. + A . + This will throw an IvalidOperationException if the conversion failed. + + + A that displays text. + + A Label is used to display single-line text elements as well as multi-line blocks of text. + + + + The following example, adapted from the default Xamarin Forms solution, shows a basic use: + + + The FormsGallery sample, which can be found on the Sample Applications page, has a LabelDemoPage.cs file. This file contains a longer and more complete example. + + The class has the following XAML properties: + + + Property + Value + + + Font + + Deprecated. Use FontAttributes, FontFamily, and FontSize, instead. A string of the format [name],[attributes],[size]. The font specification may contain multiple attributes, e.g. Georgia, Bold, Italic, 42. + + + + FontAttributes + + + Bold, Bold,Italic, or None. + + + + FontFamily + + A font family, such as sans-serif or monospace. + + + + FontSize + + A named size, such as Large, or an integer that represents the size in device units. + + + + + LineBreakMode + + A string that corresponds to a enumeration value. + + + + Text + + The text that will appear on the label. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + XAlign + + + Center, End, or Start, to indicate the horizontal placement of the label text. + + + + YAlign + + + Center, End, or Start, to indicate the vertical placement of the label text. + + + + + + + Initializes a new instance of the Label class. + + + + Gets or sets the Font for the Label. This is a bindable property. + The value for the Label. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the label is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the label belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets the size of the font for the label. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the formatted text for the Label. This is a bindable property. + The value to be displayed inside of the Label. This is a bindable property. + Setting FromattedText to a non-null value will set the Text property to null. + + + + Backing store for the FormattedText property. + To be added. + + + Gets or sets the LineBreakMode for the Label. This is a bindable property. + The value for the Label. The default is + + + + Backing store for the LineBreakMode bindable property. + + + + Gets or sets the text for the Label. This is a bindable property. + The value to be displayed inside of the Label. + Setting Text to a non-null value will set the FormattedText property to null. + + + + Gets or sets the for the text of this Label. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Gets or sets the horizontal alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is left-aligned. + + + + Backing store for the XAlign bindable property. + + + + Gets or sets the vertical alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is top-aligned. + + + + Backing store for the YAlign bindable property. + + + + + Provides the base class for all Layout elements. Use Layout elements to position and size child elements in Forms applications. + + + Subtypes of include , , and , as shown in the following diagram. + The property of contains a list of children of the parameterized type T, which must be a type of . Since is itself a subclass of , this allows s to hold sub-layouts, scrolling regions, etc. + + + + The class has the following XAML properties: + + + Property + Value + + + IsClippedToBounds + + + true or false, to indicate whether the layout is clipped to its bounding rectangle. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + + + + + + + Intitializes a new instance. + To be added. + + + Forces a layout cycle on the element and all of its descendants. + + Calling ForceLayout frequently can have negative impacts on performance. + + + + The available width that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the Layout. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + + + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of the app. Overriding GetSizeRequest should only be done if the developer wants to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + + + Invalidates the current layout. + Calling this method will invalidate the measure and triggers a new layout cycle. + + + Gets or sets a value which determines if the Layout should clip its children to its bounds. + + if the Layout is clipped; otherwise, . The default value is . + To be added. + + + Identifies the bindable property. + + + + Occurs at the end of a layout cycle if any of the child element's have changed. + + Developers wishing to implement animations may wish to begin them at the end of a LayoutChanged event. + + + + The child element to be positioned. + The bounding region in which the child should be positioned. + Positions a child element into a bounding region while respecting the child elements and . + This method is called in the layout cycle after the general regions for each child have been calculated. This method will handle positioning the element relative to the bounding region given if the bounding region given is larger than the child's desired size. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a Layout. + Implementors wishing to change the default behavior of a Layout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The view to lower in the visual stack. + Sends a child to the back of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which the children are enumerated. + + + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + To be added. + + + The child element whose preferred size changed. + The event data. + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + This method has a default implementation and and application developers must call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has a default implementation which triggers the layout cycle of the Layout to begin. + + + Gets or sets the inner padding of the Layout. + The Thickness values for the layout. The default value is a Thickness with all values set to 0. + + + The padding is the space between the bounds of a layout and the bounding region into which its children should be arranged into. + + + The following example shows setting the padding of a Layout to inset its children. + + + + + + + + Identifies the Padding bindable property. + + + + The view to raise in the visual stack. + Sends a child to the front of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which they are enumerated. + + + To be added. + When implemented, should return if should call , and to return if it should not. + To be added. + To be added. + + + To be added. + When implemented, should return if should call when it is removed, and to return if it should not. + To be added. + To be added. + + + Instructs the layout to relayout all of its children. + This method starts a new layout cycle for the layout. Invoking this method frequently can negatively impact performance. + + + The subclass of the layout contains. + A base implementation of a layout with undefined behavior and multiple children. + + + s contain that are of the type T with which the was specified. This T must be of type . Since s are subclasses of , this means that layouts may be nested, contain scrolling regions, etc. + + The following image shows the relationship between , , , and important subtypes. + + + + + The following example shows adding and removing elements from a layout. + + + layout, IEnumerable newItems) + { + layout.Children.Clear (); + foreach (var item in newItems) { + layout.Children.Add (item); + } + } + ]]> + + + + + Provides the base initialization for objects derived from the Layout<T> class. + + + + Gets an IList<View> of child element of the Layout. + A IList<View>. The default is an empty list. + + + The Children collection of a Layout contains all the children added throught the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a layout, setting a property, and adding the children in the object initializer. + + + + + + + + The view which was added. + Invoked when a child is added to the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + The view which was removed. + Invoked when a child is removed from the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + Values that represent LayoutAlignment. + To be added. + + + The center of an alignment. + + + The end of an alignment. Usually the Bottom or Right. + + + Fill the entire area if possible. + + + The start of an alignment. Usually the Top or Left. + + + A struct whose static members define various alignment and expansion options. + To be added. + + + An alignment value. + Whether or not an element will expand to fill available space in its parent. + Creates a new object with and . + To be added. + + + Gets or sets a value that indicates how an element will be aligned. + The flags that describe the behavior of an element. + To be added. + + + A structure that describes an element that is centered and does not expand. + To be added. + + + A structure that describes an element that is centered and expands. + To be added. + + + A structure that describes an element that appears at the end of its parent and does not expand. + To be added. + + + A object that describes an element that appears at the end of its parent and expands. + To be added. + + + Gets or sets a value that indicates whether or not the element that is described by this structure will occupy the largest space that its parent will give to it. + Whether or not the element that is described by this structure will occupy the largest space that its parent will give it. if the element will occupy the largest space the parent will give to it. if the element will be as compact as it can be. + To be added. + + + A stucture that describes an element that has no padding around itself and does not expand. + To be added. + + + A structure that describes an element that has no padding around itself and expands. + To be added. + + + A structure that describes an element that appears at the start of its parent and does not expand. + To be added. + + + A structure that describes an element that appears at the start of its parent and expands. + To be added. + + + Enumeration specifying various options for line breaking. + To be added. + + + Wrap at character boundaries. + + + Truncate the head of text. + + + Truncate the middle of text. This may be done, for example, by replacing it with an ellipsis. + + + Do not wrap text. + + + Truncate the tail of text. + + + Wrap at word boundaries. + + + An that displays a collection of data as a vertical list. + + + + + The following example shows a basic use: + + people = new List + { + new Person("Abigail", new DateTime(1975, 1, 15), Color.Aqua), + new Person("Bob", new DateTime(1976, 2, 20), Color.Black), + // ...etc.,... + new Person("Yvonne", new DateTime(1987, 1, 10), Color.Purple), + new Person("Zachary", new DateTime(1988, 2, 5), Color.Red) + }; + + // Create the ListView. + ListView listView = new ListView + { + // Source of data items. + ItemsSource = people, + + // Define template for displaying each item. + // (Argument of DataTemplate constructor is called for + // each item; it must return a Cell derivative.) + ItemTemplate = new DataTemplate(() => + { + // Create views with bindings for displaying each property. + Label nameLabel = new Label(); + nameLabel.SetBinding(Label.TextProperty, "Name"); + + Label birthdayLabel = new Label(); + birthdayLabel.SetBinding(Label.TextProperty, + new Binding("Birthday", BindingMode.OneWay, + null, null, "Born {0:d}")); + + BoxView boxView = new BoxView(); + boxView.SetBinding(BoxView.ColorProperty, "FavoriteColor"); + + // Return an assembled ViewCell. + return new ViewCell + { + View = new StackLayout + { + Padding = new Thickness(0, 5), + Orientation = StackOrientation.Horizontal, + Children = + { + boxView, + new StackLayout + { + VerticalOptions = LayoutOptions.Center, + Spacing = 0, + Children = + { + nameLabel, + birthdayLabel + } + } + } + } + }; + }) + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + listView + } + }; + } + } +} + +]]> + + The class has the following XAML properties: + + + Property + Value + + + + HasUnevenRows + + + true or false, to indicate whether the items in the list all have the same height. + + + + IsGroupingEnabled + + + true or false, to indicate whether grouping is enabled. + + + + RowHeight + + An integer that describes the height of the items in the list. This is ignored if HasUnevenRows is true. + + + + + + + + Creates and initializes a new instance of the class. + + + + The item to create a default visual for. + Creates an instance of the default visual representation of an item. + + A instance with its text set to the string representation of the object (). + + + + This method is called by the templating system when is . + + + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + + Gets or sets the binding to use for display the group header. + The instance to apply to grouped lists, or . + + + This binding can be used to simply set a the text of the group headers without defining a full template and uses the default visuals + of the platform to display it. The binding is applied to the of the group. + + + This property is mutually exclusive with property. Setting it will set + to . + + + + This example shows an alphabetized list of people, grouped by first initial with the display binding set. + + + { + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } + } + ]]> + + + + + Identifies the property. + + + + Gets or sets a for group headers. + The for group headers, or . + + + Use this property to define a template for a that will be used as the header for groups in this + . The will be the + for each group. + + + GroupHeaderTemplate is mutually exclusive with . Setting this property + will set to . + + Empty groups will still display a group header. + + + + + + + Identifies the property. + + + + Gets or sets a binding for the name to display in grouped jump lists. + The instance to apply to grouped lists, or . + + + When grouping items in a , it is often useful to have jump lists to jump to specific + sections in the list. For example, in an alphabetically grouped lists, the jump list would be the the letter of each group. + This binding is applied against the of each group to select the short name to display + in the jump list. + + + Note: On Android, there is no displayed jump list. + + + + This example shows an alphabetized list of people, grouped by first initial with the short name binding set. + + +{ + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } +} + ]]> + + + + + Identifies the property. + + + + Gets or sets a Boolean value that indicates whether this element has uneven rows. + + if this control has uneven rows. Otherwise, + + + When the property is , the property is ignored for each child element that has a value that is greater than 0, in which case that element's value is used, instead. If a child element's property is equal to 0, then the value is used for that element. + + Setting this property to does not enable automatic sizing of cells. iOS as a platform must have a size specified ahead of time and due to this restriction you must set . + + + + Identifies the property. + + + + Gets or sets whether or not grouping is enabled for . + + if grouping is enabled, otherwise and by default. + + + + + + + Identifies the property. + + + + Occurs when the visual representation of an item is being added to the visual layout. + This method is guaranteed to fire at some point before the element is on screen. + + + Occurs when the visual representation of an item is being removed from the visual layout. + This method is for virtualization usage only. It is not guaranteed to fire for all visible items when the List is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Event that is raised when a new item is selected. + To be added. + + + Event that is raised when an item is tapped. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made.. + To be added. + To be added. + + + Gets or sets a value that represents the height of a row. + To be added. + To be added. + + + The backing store for the property. + + + + The item from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the . + + A linear search is done for the item, so if the same reference appears multiple times in the list, the first item will be scrolled to. This includes if grouping is enabled. + + + contains an invalid value for . + + + The item from your to scroll to. + The group from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the in the + + A linear search is done for the item, so if the same reference appears multiple times in the , the first item will be scrolled to. The same item in a different group will be ignored. + + + contains an invalid value for . + + + is . + + + Gets or sets the currently selected item from the . + The selected item or if no item is selected. + + + + Identifies the property. + + + + To be added. + To be added. + Makes this element the of the . + To be added. + + + To be added. + Raises the event for . + To be added. + + + To be added. + Raises the event for . + To be added. + + + Enumerates values that control how detail content is displayed in a master-detail page. + To be added. + + + To be added. + + + Details pop over the page. + + + Details are always displayed in a split screen. + + + Details are displayed in a split screen when the device is in landscape orientation. + + + Details are displayed in a split screen when the device is in portrait orientation. + + + A that manages two panes of information: A master page that presents data at a high level, and a detail page that displays low-level details about information in the master. + + The following example code, taken from the FormsGallery sample application, creates a that allows the user to view detailed information about a color that she chooses from a list. Note that the NamedColorPage class, defined in as a sublcass of in another file in the sample application, simply displays RGB data, a with its background color set to the color that the user selected, and, finally, hue, saturation, and luminosity data. + The sample below illustrates three key concepts. First, the "Master" portion of the MasterDetailPage is represented by the property, which is set to a element in this example. This element contains a label and a list of colors. Second, the "Detail" portion of the is represented by the property, which, in this example, is set to the NamedColorPage that was noted above. Third, and finally, the page that is represented by the property is displayed by setting the property to ; That is, the property controls whether or not the page that is represented by the is presented to the user. + The page must have its property set. Additionally, the page will only display a navigation bar if it is an instance of . + + + { + this.IsPresented = true; + })); + } + + // Define a selected handler for the ListView. + listView.ItemSelected += (sender, args) => + { + // Set the BindingContext of the detail page. + this.Detail.BindingContext = args.SelectedItem; + + // Show the detail page. + this.IsPresented = false; + }; + + // Initialize the ListView selection. + listView.SelectedItem = namedColors[0]; + + + } + } +} + ]]> + + + The Windows Phone and Android platforms do not support sliding the detail screen in order to show or hide it. Use a to allow the user to show and hide the Detail screen on these platforms. On Windows Phone, consider using a user interface class that provides an experience that is more consistent with that platform, such as . + + + + + Creates a new empty . + To be added. + + + Gets or sets the detail page that is used to display details about items on the master page. + To be added. + To be added. + + + Gets or sets a value that turns on or off the gesture to reveal the master page. This is a bindable property. + + if gesture is enabled; otherwise . Default is . + Has no effect on Windows Phone. + + + Backing store for the IsGestureEnabled bindable property. + + + + Gets or sets a value that indicates whether or not the visual element that is represented by the property is presented to the user. + To be added. + Setting this property causes the event to be raised. + + + Event that is raised when the visual element that is represented by the property is presented or hidden. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Lays out the master and detail pages. + To be added. + + + Gets or sets the master page. + To be added. + To be added. + + + Gets or sets a value that indicates how detail content is displayed. + To be added. + To be added. + + + Backing store for the MasterBehavior property. + To be added. + + + Event that is raised when a detail appears. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Event that is raised when a detail disappears. + To be added. + + + Method that is called when the property of this is set. + To be added. + + + To be added. + To be added. + To be added. + + + Class that presents a menu item and associates it with a command. + + The class has the following XAML properties: + + + Property + Value + + + Command + + A binding to a command. + + + + CommandParameter + + A parameter to pass to the command. + + + + + IsDestructive + + + true or false, to indicate whether the command deletes an item in a list. + + + + Text + + The text to display on the menu item. + + + + + + + Intitializes a new instance. + To be added. + + + Event that is raised when the menu item is clicked. + To be added. + + + Gets or sets the command that is run when the menu is clicked. + To be added. + To be added. + + + Gets or sets the parameter that is passed to the command. + To be added. + To be added. + + + Identifies the command parameter bound property. + To be added. + + + Identifies the command bound property. + To be added. + + + Gets or sets the icon for the menu item. + To be added. + To be added. + + + Identfies the icon bound property. + To be added. + + + Gets or sets a value that indicates whether or not the menu item removes its associated UI element. + To be added. + To be added. + + + Identifies the IsDestructive bound property. + To be added. + + + When overriden by an app dev, implements behavior when the menu item is clicked. + To be added. + + + The text of the menu item. + To be added. + To be added. + + + Identifies the text bound property. + To be added. + + + Associates a callback on subscribers with a specific message name. + + The following shows a simple example of a strongly-typed callback using is: + + (subscriber, "IntPropertyMessage", (s, e) => { + subscriber.IntProperty = e; +}); + +//...later... + +MessagingCenter.Send(this, "IntPropertyMessage", 2); +Assert.AreEqual(2, subscriber.IntProperty); + ]]> + + + + + To be added. + To be added. + To be added. + Sends a named message that has no arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Sends a named message with the specified arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to parameterized messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterless subscriber messages. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterized subscriber messages. + To be added. + + + The particular subclass of that the MultiPage services. + A bindable, templatable base class for pages which contain multiple sub-pages. + + Provides a base implementation for binding and templating pages. + The class has the following XAML properties: + + + Property + Value + + + ItemsSource + + XAML extension markup that specifies a static collection of data objects. + + + + ItemTemplate + + XAML markup that describes a view that has bindings to properties on the members of the collection that is specified by ItemsSource. + + + + + + + Provides the base initialization for objects derived from the MultiPage<T> class. + + provides two classes that are derived from , and . + + + + Gets an IList<Page> of child elements of the MultiPage. + A IList<Page>. The default is an empty list. + + + The collection of a contains all the children added through the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a , which descends from . + + + + + + + + The object which the default page should be templated from. + Create default provides a default method of creating new pages from objects in a binding scenario. + The newly created page. + Most implementors will not need to use or override CreateDefault. + + + Gets or sets the currently selected page. + The current page. The default value is null. + The default page will usually get set when the multi-page is displayed or templated. + + + Raised when the property changes. + + + + The source for the items to be displayed. + To be added. + To be added. + + + Identifies the property. + To be added. + + + The template for displaying items. + To be added. + To be added. + + + Identifies the bindable property. + + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + The child that was added. + Called when a child has been added to the . + + + + Raises the event. + + + + To be added. + Called when the pages of the have been changed. + To be added. + + + The name of the property that was changed. + Called when a bindable property has changed. + + + + Raised when the children pages of the have changed. + To be added. + + + The currently selected item. + The selected item from the or if nothing selected. + + + + Identifies the bindable property. + + + + To be added. + To be added. + When overriden in a derived class, performs initialization of . + To be added. + + + To be added. + Sets the page that is specified by as the default page. + To be added. + To be added. + + + To be added. + To be added. + Performs initialization of . + To be added. + + + Class that represents a list of property and binding conditions, and a list of setters that are applied when all of the conditions in the list are met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Conditions + + A list of PropertyCondition and/or BindingCondition markup instances that specify the conditions that all must be met before all of the setters that are listed in Setters are applied. + + + + Setters + + A list of setters that are applied when all of the property conditions are met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets the list of conditions that must be satisfied in ordeer for the setters in the list to be invoked. + To be added. + To be added. + + + Gets the list of objects that will be applied when the list of conditions in the property are all met. + To be added. + To be added. + + + Represents pre-defined font sizes. + The exact pixel-value depends on the platform on which Forms runs. + + + The default font size. + + + A Large font size, for titles or other important text elements. + + + A default font size, to be used in stand alone labels or buttons. + + + The smallest readable font size for the device. Think about this like legal footnotes. + + + A small but readable font size. Use this for block of text. + + + Extension methods for and that add strongly-typed FindByName methods. + To be added. + + + To be added. + To be added. + To be added. + Returns the instance of type that has name in the scope that includes . + To be added. + To be added. + + + EventArgs for the NavigationPage's navigation events. + + + + + + + The page that was popped or is newly visible. + + + + + Gets the page that was removed or is newly visible. + + + For , this is the that was removed. For + and it is the newly visible page, the pushed page or the root respectively. + + + + A that manages the navigation and user-experience of a stack of other pages. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + Initializes a new object. + To be added. + + + To be added. + Creates a new element with as its root element. + To be added. + + + Identifies the property associated with the title of the back button. + To be added. + + + Gets or sets the background color for the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar background color. + To be added. + + + Gets or sets the text that appears on the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar text color. + To be added. + + + The that is currently top-most on the navigation stack. + To be added. + To be added. + + + Identifies the property. + + + + The whose back-button's title is being requested. + The title of the back button for the specified . + The title of the back button that would be shown if the specified were the . + To be added. + + + To be added. + Returns a value that indicates whether has a back button. + To be added. + To be added. + + + The being queried. + Returns a value that indicates whether the has a navigation bar. + + if would display a navigation bar were it the . + To be added. + + + The whose title icon is being set. + Retrieves the path to the file providing the title icon for the . + The path to the file providing the title icon for the . + To be added. + + + Backing store for the HasBackButton property. + To be added. + + + Backing store for the HasNavigationBar property. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Asynchronously removes the top from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the top from the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised after a page is popped from this element. + To be added. + + + Event that is raised when the last nonroot element is popped from this element. + To be added. + + + Pops all but the root off the navigation stack. + A task that represents the asynchronous dismiss operation. + To be added. + + + To be added. + A task for asynchronously popping all pages off of the navigation stack. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + To be added. + + + To be added. + To be added. + A task for asynchronously pushing a page onto the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised when a page is pushed onto this element. + To be added. + + + To be added. + To be added. + Sets the title that appears on the back button for . + To be added. + + + To be added. + To be added. + Adds or removes a back button to , with optional animation. + To be added. + + + To be added. + To be added. + Sets a value that indicates whether or not this element has a navigation bar. + To be added. + + + The whose title icon is being set. + The FileImageSource of the icon. + Sets the title icon of the to the icon file at . + + + + + + + + + + + The color to be used as the Tint of the . + To be added. + + Tint is especially important in iOS 7 and later, where the Tint is primary way to specify which controls on screen are active or have an action associated with them. + + + + Identifies the bindable property. + To be added. + + + Indicates the / property. + To be added. + + + To be added. + Provides idiom-specific implementation of T for the current TargetIdiom. + + + + Initializes a new instance of OnIdiom + + + + To be added. + Implicitly converts OnIdiom to T, depending on Device.Idiom. + The value of the Phone or Tablet property, depending on the current Device.Idiom. + + + + Gets or sets the value applied on Phone-like devices. + A T. + + + + Gets or sets the value applied on Tablet-like devices. + A T. + + + + To be added. + Provides the platform-specific implementation of T for the current . + To be added. + + + Creates a new instance of the type. + To be added. + + + The type as it is implemented on the Android platform. + To be added. + To be added. + + + The type as it is implemented on the iOS platform. + To be added. + To be added. + + + To be added. + Casts the type to the version that corresponds to the platform. + To be added. + To be added. + + + The type as it is implemented on the WinPhone platform. + To be added. + To be added. + + + A that displays OpenGL content. + + + s are easiest to program using Shared Projects, in which case the reference to OpenTK is straightforward. The following example shows a simple OpenGL app with a render loop: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + + toggle.Toggled += (s, a) => { + view.HasRenderLoop = toggle.IsToggled; + }; + button.Clicked += (s, a) => view.Display (); + + var stack = new StackLayout { + Padding = new Size (20, 20), + Children = {view, toggle, button} + }; + + Content = stack; + } + } +} + ]]> + + + + + + + + Creates a new object with default values. + To be added. + + + Called prior to rendering. + To be added. + + + Whether this has a custom rendering loop. + To be added. + To be added. + + + Identifies the bindable property. + To be added. + + + Overridden to create a custom rendering loop. + To be added. + + When overridden, creates a custom renderer: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + ]]> + + + + + A that occupies the entire screen. + + + is primarily a base class for more useful derived types. Objects that are derived from the see class are most prominently used as the top level UI element in Xamarin.Forms applications. Typically, application developers will provide such an object to the target platforms by returning it from a static method that the developer created in a project that references . The contents of a typical App.cs file that would appear in a project that reference are shown below: + + +using Xamarin.Forms; + +namespace MyFirstFormsApp +{ + public class App + { + public static Page GetMainPage() + { + return new ContentPage { + Content = new Label { + Text = "Hello, Forms!", + VerticalOptions = LayoutOptions.CenterAndExpand, + HorizontalOptions = LayoutOptions.CenterAndExpand, + } + }; + } + } +} + + While a object was returned in the example above, note that any class that extends could have been passed, instead. For example, by using conditional compilation or by checking the platform, the developr can pass a to Windows Phone applications, in order to better match the style of the user interface on that platform, while passing objects or other Page types to the other platforms. + The other projects in the solution that target the Windows Phone, iOS, and Android platforms can call the GetMainPage method to obtain the descendant that describes the portable user interface. This object can then be used with platform-specific static methods or extension methods to incorporate it into the native UI for each platform. + On all platforms, Application developers must call the method before they get or create any elements. + Each targeted platform uses the returned page in a different way. The Xamarin.Forms.Platform.iOS library provides Xamarin.Forms.Page.CreateViewController() extension method, which returns a UIViewController that application developers can assign to the UIWindow.RootViewController property of the top-level UI. This code is typically placed inside the UIApplicationDelegate.FinishedLaunching override for the main application class. A typical example is shown below: + + +using System; +using Xamarin.Forms; + +namespace MyFirstFormsApp.iOS +{ + [Register("AppDelegate")] + public partial class AppDelegate : UIApplicationDelegate + { + UIWindow window; + + public override bool FinishedLaunching(UIApplication app, + NSDictionary options) + { + Forms.Init(); + + window = new UIWindow(UIScreen.MainScreen.Bounds); + + window.RootViewController = App.GetMainPage().CreateViewController(); + window.MakeKeyAndVisible(); + + return true; + } + } +} + + + + The Xamarin.Forms.Platform.Android.AndroidActivity class provides the Xamarin.Forms.Platform.Android.AndroidActivity.SetPage method, which performs the work that is necessary to make its page argument the top-level UI element of the Xamarin.Forms.Platform.Android.AndroidActivity. A typical example is shown below: + + +using System; +using Android.App; +using Android.OS; +using Xamarin.Forms.Platform.Android; + + +namespace MyFirstFormsApp.Android +{ + [Activity(Label = "MyFirstFormsApp", MainLauncher = true)] + public class MainActivity : AndroidActivity + { + protected override void OnCreate(Bundle bundle) + { + base.OnCreate(bundle); + + Xamarin.Forms.Forms.Init(this, bundle); + + SetPage(App.GetMainPage()); + } + } +} + + + For Windows Phone, provides an extension method for that is called . This method returns a System.Windows.UIElement object that has the page that was passed to it as its current page. A typical example is shown below: + + +using System; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Navigation; +using Microsoft.Phone.Controls; +using Microsoft.Phone.Shell; + +using Xamarin.Forms; + + +namespace MyFirstFormsApp.WinPhone +{ + public partial class MainPage : PhoneApplicationPage + { + public MainPage() + { + InitializeComponent(); + + Forms.Init(); + Content = Phoneword.App.GetMainPage().ConvertPageToUIElement(this); + } + } +} + + In addition to their role as the main pages of applications, objects and their descendants can be used with navigation classes, such as or , among others, to provide rich user experiences that conform to the expected behaviors on each platform. + The class has the following XAML properties: + + + Property + Value + + + BackgroundImage + + A local file specification that identifies an image. + + + + Icon + + A local file specification that identifies an image. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + Title + + Text that represents the title of the page. + + + + ToolbarItems + + A list of ToolBarItem elements. + + + + + + + Creates a new element with default values. + To be added. + + + Indicates that the is about to appear. + To be added. + + + Identifies the image used as a background for the . + To be added. + To be added. + + + Identifies the property. + To be added. + + + Indicates that the is about to cease displaying. + To be added. + + + Title of the displayed action sheet. + Text to be displayed in the 'Cancel' button. + Text to be displayed in the 'Destruct' button. + Text labels for additional buttons. + Displays a native platform action sheet, allowing the application user to choose from several buttons. + An awaitable Task that displays an action sheet and returns the Text of the button pressed by the user. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with a single cancel button. + To be added. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Accept' button. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with an accept and a cancel button. + To be added. + To be added. + + + Forces the to perform a layout pass. + To be added. + + + Resource identifier for the 's associated icon. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Marks the Page as busy. This will cause the platform specific global activity indicator to show a busy state. + A bool indicating if the Page is busy or not. + Setting IsBusy to true on multiple pages at once will cause the global activity indicator to run until both are set back to false. It is the authors job to unset the IsBusy flag before cleaning up a Page. + + + Identifies the property. + To be added. + + + Raised when the layout of the has changed. + To be added. + + + Left-hand side of layout area. + Top of layout area. + Width of layout area. + Height of layout area. + Lays out children s into the specified area. + To be added. + + + When overridden, allows application developers to customize behavior immediately prior to the becoming visible. + To be added. + + + Application developers can override this method to provide behavior when the back button is pressed. + To be added. + To be added. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + + Overriders must call the base method. + + + + To be added. + To be added. + Indicates that the preferred size of a child has changed. + To be added. + + + When overridden, allows the application developer to customize behavior as the disappears. + To be added. + + + Called when the 's property has changed. + To be added. + + + The width allocated to the . + The height allocated to the . + Indicates that the has been assigned a size. + To be added. + + + The space between the content of the and it's border. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Calls . + To be added. + To be added. + + + The 's title. + To be added. + To be added. + + + Identifies the property. + To be added. + + + A set of s, implemented in a platform-specific manner. + To be added. + To be added. + + + Requests that the children s of the update their layouts. + To be added. + + + A control for picking an element in a list. + + The visual representation of a Picker is similar to a , but a picker control appears in place of a keyboard. + The following example shows the creation of a Picker. + + nameToColor = new Dictionary + { + { "Aqua", Color.Aqua }, { "Black", Color.Black }, + { "Blue", Color.Blue }, { "Fuschia", Color.Fuschia }, + { "Gray", Color.Gray }, { "Green", Color.Green }, + { "Lime", Color.Lime }, { "Maroon", Color.Maroon }, + { "Navy", Color.Navy }, { "Olive", Color.Olive }, + { "Purple", Color.Purple }, { "Red", Color.Red }, + { "Silver", Color.Silver }, { "Teal", Color.Teal }, + { "White", Color.White }, { "Yellow", Color.Yellow } + }; + + public PickerDemoPage() + { + Label header = new Label + { + Text = "Picker", + Font = Font.BoldSystemFontOfSize(50), + HorizontalOptions = LayoutOptions.Center + }; + + Picker picker = new Picker + { + Title = "Color", + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + foreach (string colorName in nameToColor.Keys) + { + picker.Items.Add(colorName); + } + + // Create BoxView for displaying picked Color + BoxView boxView = new BoxView + { + WidthRequest = 150, + HeightRequest = 150, + HorizontalOptions = LayoutOptions.Center, + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + picker.SelectedIndexChanged += (sender, args) => + { + if (picker.SelectedIndex == -1) + { + boxView.Color = Color.Default; + } + else + { + string colorName = picker.Items[picker.SelectedIndex]; + boxView.Color = nameToColor[colorName]; + } + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + picker, + boxView + } + }; + + } + } +} +]]> + + The class has the following XAML properties: + + + Property + Value + + + Items + + A local file specification that identifies an image. + + + + SelectedIndex + + An integer, from 0 to 1 less than the count of items that are listed in Items. Currently, this element must be specified in a tag that appears lexically below Items. + + + + Title + + Text that represents the title of the picker. + + + + + + + + + + Initializes a new instance of the Picker class. + + + + Gets the list of choices. + An IList<string> representing the Picker choices. + This property is read-only, but exposes the IList<> interface, so items can be added using Add(). + + + Gets or sets the index of the slected item of the picker. This is a bindable property. + An 0-based index representing the selected item in the list. Default is -1. + A value of -1 represents no item selected. + + + Raised when the value of the SelectIndex property has changed. + To be added. + + + Identifies the SelectedIndex bindable property. + + + + Gets or sets the title for the Picker. This is a bindable property. + A string. + Depending on the platform, the Title is shown as a placeholder, headline, or not showed at all. + + + Identifies the Title bindable property. + + + + Struct defining a 2-D point as a pair of doubles. + To be added. + + + + that specifies a that has the coordinates (, ). + Creates a new object that has coordinates that are specified by the width and height of , in that order. + To be added. + + + The horizontal coordinate. + The vertical coordinate. + Creates a new object that represents the point (,). + To be added. + + + The to which the distance is calculated. + Calculates the distance between two points. + The distance between this and the . + To be added. + + + Another . + Returns if the X and Y values of this are exactly equal to those in the argument. + + if the X and Y values are equal to those in . Returns if is not a . + + The and values of the are stored as s. Developers should be aware of the precision limits and issues that can arise when comparing floating-point values. In some circumstances, developers should consider the possibility of measuring approximate equality using the (considerably slower) method. + + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Whether both X and Y are 0. + + if both and are 0.0. + To be added. + + + The amount to add along the X axis. + The amount to add along the Y axis. + Returns a new that translates the current by and . + A new at [this.X + dx, this.Y + dy]. + To be added. + + + The to which is being added. + The values to add to . + Returns a new by adding a to a . + A new at [pt.X + sz.Width, pt.Y + sz.Height]. + To be added. + + + A to be compared. + A to be compared. + Whether the two s are equal. + + if the two s have equal values. + To be added. + + + The to be translated as a . + Returns a new whose and and equivalent to the 's and properties. + A new based on the . + To be added. + + + A to be compared. + A to be compared. + Whether two points are not equal. + + if and do not have equivalent X and Y values. + To be added. + + + The from which is to be subtracted. + The whose and will be subtracted from 's and . + Returns a new by subtracting a from a . + A new at [pt.X - sz.Width, pt.Y - sz.Height]. + To be added. + + + Returns a new whose and have been rounded to the nearest integral value. + A new whose and have been rounded to the nearest integral value, per the behavior of Math.Round(Double). + To be added. + + + A human-readable representation of the . + The string is formatted as "{{X={0} Y={1}}}". + To be added. + + + Location along the horizontal axis. + To be added. + To be added. + + + Location along the vertical axis. + To be added. + To be added. + + + The at {0,0}. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that displays progress. + + The following example shows the usage of a ProgressBar. + + + + + + + The class has the following XAML property: + + + Property + Value + + + Progress + + A decimal value between 0 and 1, inclusive, that specifies the fraction of the bar that is colored. + + + + + + + Initializes a new instance of the ProgressBar class + + + + Gets or sets the progress value. This is s bindable property. + Gets or sets a value that specifies the fraction of the bar that is colored. + Values less than 0 or larger than 1 will be clamped to the range [0-1]. + + + Identifies the Progress bindable property. + + + + To be added. + To be added. + To be added. + Animate the Progress property to value. + A Task<bool> you can await on. + + + + Event arguments for the delegate. + To be added. + + + To be added. + Creates a new object that indicates that is changing. + To be added. + + + Gets the name of the property that is changing. + The name of the property that is changing. + To be added. + + + To be added. + To be added. + Delegate for the event. + To be added. + + + Class that represents a value comparison with a property. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to check. + + + + Value + + The value for which the condition is met. + + + + + + + Initializes a new instance. + To be added. + + + Gets or sets the property against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Provides a value by using the supplied service provider. + To be added. + To be added. + + + Struct defining a rectangle, using doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + Where Xamarin.Forms supports XAML for structures, app devs can represent the rectangle as a comma-separated list of the X-coordinate, Y-Coordinate, Width, and Height. + + + + To be added. + To be added. + Creates a new object with its top left corner at with a height and width that are specified by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with its top left corner at (, ) and wide and tall. + To be added. + + + The bottom of the . + To be added. + + Modifying this value also modifies the property. + + + + The halfway between and , and . + To be added. + To be added. + + + The being checked for containment. + Whether the is within, or along the periphery, of this . + + if is within, or along the periphery, of this. + To be added. + + + The being checked for containment. + Whether is entirely within, or along the periphery, of this . + + if the borders of are entirely within, or along the periphery, of this. + To be added. + + + The X location of the point being checked. + The Y location of the point being checked. + Whether the point described by and is within, or along the periphery of, this . + + if the point described by and is within, or along the periphery of, this. + To be added. + + + An Object to compare to this. + Whether an is a and has exactly the same values as this. + + if is a that has exactly the same values as this. + To be added. + + + The being compared to this. + Whether a has exactly the same values as this. + + if has exactly the same values as this. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Factory method to create a from , , , and . + A new whose values are equal to the arguments. + To be added. + + + The hashcode for the . + A value optimized for fast insertion and retrieval in a hash-based data structure. + To be added. + + + Extent along the Y axis. + To be added. + + Modifying this value modifies the property.. + + + Values to inflate all the borders. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by 's and whose and are inflated by 's . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in each dimension by twice . + + + + + + + Value to shift to the left and to the right. + Value to shift upward and downward. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by and whose and are inflated by . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in X by twice and larger in Y by twice . + + + + + + + A this will be intersected with. + A new that is the intersection of this and . + Returns a new that is the intersection of this and , or if there is no intersection. + To be added. + + + A being intersected. + A being intersected. + A new that is the intersection of and . + Returns a new that is the intersection of and , or if there is no intersection. + To be added. + + + The being intersected. + Whether this intersects . + + if this intersects . + To be added. + + + Whether this has either or less than or equal to 0. + + if either or is less than or equal to 0. + To be added. + + + The position of the on the X axis. + To be added. + To be added. + + + The defined by and . + To be added. + To be added. + + + A whose X and Y values should be added to this's . + A new whose is offset by . + A new whose is equal to this's translated by . + To be added. + + + Change along the X axis. + Change along the Y axis. + A new whose is offset by and . + A new whose is equal to this's translated by and . + To be added. + + + A being compared. + A being compared. + Whether two s have equal values. + + if both the and of the two rectangles are equivalent. + To be added. + + + A being compared. + A being compared. + Whether two s have unequal values. + + if either the or of the two rectangles have differences. + To be added. + + + The furthest extent along the X axis. + To be added. + To be added. + + + Returns a new whose values have been rounded to their nearest integral value. + A new whose , , , and have been rounded to their nearest integral values. + + The rounding is applied to each property independently. + + + + The extent of the along its X and Y axes. + To be added. + To be added. + + + The top of the . + To be added. + To be added. + + + A human-readable description of the . + The format is "{X={0} Y={1} Width={2} Height={3}}". + To be added. + + + The whose union is being calculated. + A new whose bounds cover the union of this and . + Returns a new whose bounds cover the union of this and . + To be added. + + + A whose union is being calculated. + A whose union is being calculated. + A new whose bounds cover the union of and . + Returns a new whose bounds cover the union of and . + To be added. + + + The extent of this along the X axis. + To be added. + To be added. + + + The position of this on the X axis. + To be added. + To be added. + + + The position of this on the Y axis. + To be added. + To be added. + + + The at {0,0} whose Size is {0,0}. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that uses s to layout its children. + + The RelativeLayoutExample class in the following code extends the class by adding a that contains a heading and another label. Both labels are positioned relative to the : + + { + return 0; + })); + + relativeLayout.Children.Add (relativelyPositioned, + Constraint.RelativeToParent ((parent) => { + return parent.Width / 3; + }), + Constraint.RelativeToParent ((parent) => { + return parent.Height / 2; + })); + this.Content = relativeLayout; + } +} +]]> + + For a more complete example that exercises many more of the layout options for the class, see the FormsGallery sample that can be found on the Sample Applications page. + The class has the following XAML attached properties: + + + AttachedProperty + Value + + + XConstraint + + XAML markup extension for a constraint expression. See . + + + + YConstraint + + XAML markup extension for a constraint expression. See . + + + + WidthConstraint + + XAML markup extension for a constraint expression. See . + + + + HeightConstraint + + XAML markup extension for a constraint expression. See . + + + + + + + Creates a new with default values. + To be added. + + + Identifies the bindable property associated with /. + To be added. + + + List of s that are children of this . + To be added. + To be added. + + + The for which the bounds constraint is being requested. + Returns the bounds constraint of the . + The of the . + To be added. + + + The for which the height constraint is being requested. + Returns the height constraint of the . + The on the height of the . + To be added. + + + The for which the width constraint is being requested. + Returns the width constraint of the . + The on the width of the . + To be added. + + + The for which the X constraint is being requested. + Returns the X constraint of the . + The on the X position of the . + To be added. + + + The for which the Y constraint is being requested. + Returns the Y constraint of the . + The on the Y position of the . + To be added. + + + Identifies the bindable property associated with the / methods. + To be added. + + + The left-side bound of the rectangle into which the children will be laid out. + The top bound of the rectangle into which the children will be laid out. + The width of the rectangle into which the children will be laid out. + The height of the rectangle into which the children will be laid out. + Lays out the in the specified rectangle. + To be added. + + + The added to the . + Called when a is added to the collection. + To be added. + + + The removed from the collection. + Called when a is removed from the collection. + To be added. + + + To be added. + To be added. + Called when this has received a size request. + To be added. + To be added. + + + The to which the constraint will be applied. + The on the . + Sets as a constraint on the bounds of . + To be added. + + + Identifies the width constraint. + To be added. + + + Identifies the constraint on X. + To be added. + + + Identifies the constraint on Y. + To be added. + + + To be added. + An of s used by a . + To be added. + + + To be added. + To be added. + Constrains to and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains to the rectangle that is defined by , , , and , and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains by , , , and , and adds it to the layout. + To be added. + + + Associate view with renderer. + Lazily assoicate a view with it's renderer. + + + The view to render. + The view to render. + The view to render. + + + The renderer for this view. + The renderer for this view. + The renderer for this view. + + + An IDictionary that maps identifier strings to arbitrary resource objects. + To be added. + + + Creates a new empty object. + To be added. + + + To be added. + + Add an implicit Style to the ResourceDictionary. Implicit Styles are applied to all VisualElements matching TargetType in the descendants of this ResourceDictionary owner, unless a Style is explicitely applied to the Element. + + Implicit Styles are added to a ResourceDictionary in XAML by not specifying an x:Key for the Element. + + To be added. + + + The identifier to be used to retrieve the . + The associated with the . + Adds and to the as a key-value pair. + To be added. + + + Empties the . + To be added. + + + The identifier being searched for. + Whether the contains a key-value pair identified by . + To be added. + To be added. + + + The number of entries in the . + To be added. + To be added. + + + Returns a of the 's s. + To be added. + To be added. + + + The identifier of the desired object. + Retrieves the value associated with the key . + To be added. + To be added. + + + The collection of identifier s that are keys in the . + To be added. + To be added. + + + The identifier of the key-value pair to be removed. + Removes the key and value identified by from the . + + if the key existed and the removal was successful. + To be added. + + + To be added. + Adds an item to the collection. + To be added. + + + To be added. + Returns a value that indicates whether the dictionary contains the value in , indexed by the key in . + To be added. + To be added. + + + To be added. + To be added. + Copies the values in the dictionary to , starting at position in . + To be added. + + + Gets a value that indicates whether the resource dictionary is read-only. + To be added. + To be added. + + + To be added. + Removes the value in , indexed by the key in , from the dictionary, if present. + To be added. + To be added. + + + Returns a of the 's s. + An of the 's s. + To be added. + + + The identifier of the object to be retrieved. + An reference to the object being retrieved, or it's default value. + Retrieves the object specified by or, if not present, the default value of . + The object specified by or, if not present, the default value of . + To be added. + + + Retrieves the values of the . + To be added. + To be added. + + + An that defines properties for a row in a . + + The class has the following XAML property: + + + Property + Value + + + Height + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute height. + + + + + App developers can specify values for the property in XAML. This is typically done inside tags for the collection property. The following example demonstrates setting three row heights to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Gets or sets the height of the row. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the size of the row is changed. + To be added. + + + A for s. + To be added. + + + Creates a new empty object. + To be added. + + + Enumeration specifying vertical or horizontal scrolling directions. + To be added. + + + Scroll Horizontally. + + + Scroll vertically. + + + Enumerates values that describe a scroll request. + To be added. + + + Scroll to the center of a list. + + + Scroll to the end of a list. + + + Scroll to make a specified list item visible. + + + Scroll to the start of a list. + + + An element capable of scrolling if its Content requires. + + The following example shows the creation of a ScrollView with a large in it. + + + + Application developers should not nest one within another. Additinoally, they should refrain from nesting them other elements that can scroll, such as . + + + + The class has the following XAML properties: + + + Property + Value + + + Content + + Markup that specifies a to display in the . + + + + Orientation + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance of the ScrollView class. + + + + Gets or sets a to display in the . + The that is displayed. + + + + Gets the size of the Content. This is a bindable property. + A that represents the size of the content. + + + + Identifies the ContentSize bindable property. + This bindable property is read-only. + + + A value that represents the x coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + Positions and sizes the content of a ScrollView. + + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + + A which contains the desired size of the element. + + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the scrolling direction of the ScrollView. This is a bindable property. + + + + + Identifies the Orientation bindable property. + + + + A control that provides a search box. + + The following example shows a basic use. + + >(); + resultsLabel.Text = ""; + + // Get Xamarin.Forms assembly. + Assembly xamarinFormsAssembly = typeof(View).GetTypeInfo().Assembly; + + // Loop through all the types. + foreach (Type type in xamarinFormsAssembly.ExportedTypes) + { + TypeInfo typeInfo = type.GetTypeInfo(); + + // Public types only. + if (typeInfo.IsPublic) + { + // Loop through the properties. + foreach (PropertyInfo property in typeInfo.DeclaredProperties) + { + // Check for a match + if (property.Name.Equals(searchText)) + { + // Add it to the list. + list.Add(Tuple.Create(type, property.PropertyType)); + } + } + } + } + + if (list.Count == 0) + { + resultsLabel.Text = + String.Format("No Xamarin.Forms properties with " + + "the name of {0} were found", + searchText); + } + else + { + resultsLabel.Text = "The "; + + foreach (Tuple tuple in list) + { + resultsLabel.Text += + String.Format("{0} type defines a property named {1} of type {2}", + tuple.Item1.Name, searchText, tuple.Item2.Name); + + if (tuple != list.Last()) + { + resultsLabel.Text += "; and the "; + } + } + + resultsLabel.Text += "."; + } + } + } +}]]> + + + + + The class has the following XAML properties: + + + Property + Value + + + CancelButtonColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + + The default text that will appear in the search bar when it is empty. + + + + SearchCommand + + XAML markup extension that describes a binding to a command. + + + + SearchCommandParameter + + The parameter for the search command. + + + + Text + + The initial text that will appear in the search bar. + + + + + + + Creates a new . + To be added. + + + Gets or sets the color of the cancel button. + To be added. + To be added. + + + Backing store for the CancelButtonColor property. + To be added. + + + Gets or sets the text that is displayed when the is empty. + The text that is displayed when the is empty. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the user presses the Search button. + To be added. + + + Gets or sets the command that is run when the user presses Search button. + The command that is run when the user presses Search button. + To be added. + + + Gets or sets the parameter that is sent to the . + The parameter that is sent to the . + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets the text that is displayed in the . + The text that is displayed in the . + To be added. + + + Event that is raised when the property is changed. For example, this event is raised as the user edits the text in the SearchBar. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + Creates a new event that indicates that the user has selected . + To be added. + + + Gets the new selected item. + To be added. + To be added. + + + Represents an assignment of a property to a value, typically in a style or in response to a trigger. + + Setters are used with triggers and styles. + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to set. + + + + Value + + The value to apply to the property. + + + + + + + Creates a new object. + To be added. + + + The property on which to apply the assignment. + To be added. + + Only bindable properties can be set with a .. + + + The value to assign to the property. + To be added. + To be added. + + + To be added. + + + + To be added. + To be added. + + + Defines extensions methods for IList<Setter> + + + + + + To be added. + To be added. + To be added. + Add a Setter with a value to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a Binding to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a DynamicResource to the IList<Setter> + To be added. + + + Struct defining height and width as a pair of doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + + + + To be added. + To be added. + Creates a new object with and . + To be added. + + + The object to which this is being compared. + Whether this is equivalent to . + + if is a whose values are identical to this's and . + To be added. + + + The to which this is being compared. + Whether this is equivalent to . + + if 's values are identical to this's and . + To be added. + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Magnitude along the vertical axis, in platform-specific units. + To be added. + To be added. + + + Whether the has and of 0.0. + + if both and are 0.0. + To be added. + + + A to be added. + A to be added. + Returns a new whose and are the sum of the component's height and width. + A whose is equal to s1.Width + s2.Width and whose is equal to sz1.Height + sz2.Height. + To be added. + + + A to be compared. + A to be compared. + Whether two s have equal values. + + if and have equal values for and . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + The to be converted to a . + Returns a new based on a . + A whose and are equal to 's and , respectively. + To be added. + + + To be added. + To be added. + Whether two s have unequal values. + + if and have unequal values for either or . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + A to be scaled. + A factor by which to multiple 's and values. + Scales both and . + A new whose and have been scaled by . + To be added. + + + A from whose values a size will be subtracted. + The to subtract from . + Returns a new whose and are 's height and width minus the values in . + A whose is equal to s1.Width - s2.Width and whose is equal to sz1.Height - sz2.Height. + To be added. + + + Returns a human-readable representation of the . + The format has the pattern "{Width={0} Height={1}}". + To be added. + + + Magnitude along the horizontal axis, in platform-defined units. + To be added. + To be added. + + + The whose values for height and width are 0.0. + To be added. + + + Struct defining minimum and maximum s. + To be added. + + + To be added. + Creates a new object with default values. + To be added. + + + To be added. + To be added. + Creates a new object that requests at least the size , but preferably the size . + To be added. + + + The minimum acceptable size. + To be added. + To be added. + + + The requested size. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + A control that inputs a linear value. + + + + + The class has the following XAML properties: + + + Property + Value + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + + + + Initializes a new instance of the Slider class. + + The following example shows a basic use. + + + + + + + The minimum selectable value. + The maximum selectable value. + The actual value. + Initializes a new instance of the Slider class. + + + + Gets or sets the maximum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Maximum bindable property. + + + + Gets or sets the minimum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Minimum bindable property. + + + + Gets or sets the current value. This is a bindable property. + A double. + + + + The ValueChanged event is fired when the Value property changes. + + + + Identifies the Value bindable property. + + + + Represents a part of a FormattedString. + To be added. + + + Initialize a new instance of the Span class. + To be added. + + + Gets or sets the Color of the span background. + To be added. + Not supported on WindowsPhone. + + + Gets or sets the Font for the text in the span. + To be added. + To be added. + + + Gets a value that indicates whether the font for the span is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which the font for the text in the span belongs. + To be added. + To be added. + + + Gets the size of the font for the text in the span. + To be added. + To be added. + + + Gets or sets the Color for the text in the span. + To be added. + To be added. + + + Event that is raised when a property is changed. + To be added. + + + Gets or sets the text of the span. + To be added. + To be added. + + + A that positions child elements in a single line which can be oriented vertically or horizontally. + + Because layouts override the bounds on their child elements, application developers should not set bounds on them. + + The following example code, adapted from the FormsGallery example shows how to create a new with children that explore many of the layout behaviors of : + + + + + + The class has the following XAML properties: + + + Property + Value + + + Orientation + + + Horizontal or Vertical. The default is Vertical. + + + + Spacing + + An integer or decimal. + + + + + + + Initializes a new instance of the StackLayout class. + + + The following example shows the initialization of a new StackLayout and setting its orientation and children. + + + + + + + + To be added. + To be added. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a StackLayout. + Implementors wishing to change the default behavior of a StackLayout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The available width for the StackLayout to use. + The available height for the StackLayout to use. + This method is called during the measure pass of a layout cycle to get the desired size of the StackLayout. + A which contains the desired size of the StackLayout. + The results of this method will be a sum of all the desired sizes of its children along the orientation axis, and the maximum along the non-orientation axis. + + + Gets or sets the value which indicates the direction which child elements are positioned. + A which indicates the direction children layouts flow. The default value is Vertical. + Setting the Orientation of a StackLayout triggers a layout cycle if the stack is already inside of a parent layout. To prevent wasted layout cycles, set the orientation prior to adding the StackLayout to a parent. + + + Identifies the Orientation bindable property. + + + + Gets or sets a value which indicates the amount of space between each child element. + A value in device pixels which indicates the amount of space between each element. The default value is 6.0. + + + Setting this value triggers a layout cycle if the StackLayout is already in a parent Layout. + + + The following example sets the Spacing on construction of a StackLayout. + + + + + + + + Identifies the Spacing bindable property. + + + + The orientations the a StackLayout can have. + + + + StackLayout should be horizontally oriented. + + + StackLayout should be vertically oriented. + + + A control that inputs a discrete value, constrained to a range. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + Increment + + An integer or decimal literal. + + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + ValueChanged + The name of an event handler. Note that this tag must appear below Value. + + + + + + Initializes a new instance of the Stepper class. + To be added. + + + The minimum selectable value. + The maximum selectable value. + The current selected value. + The increment by which Value is increased or decreased. + Initializes a new instance of the Stepper class. + To be added. + + + Gets or sets the increment by which Value is increased or decreased. This is a bindable property. + A double. + + + + Identifies the Increment bindable property. + To be added. + + + Gets or sets the maximum selectable value. This is a bindable property. + A double. + To be added. + + + Identifies the Maximum bindable property. + To be added. + + + Gets or sets the minimum selectabel value. This is a bindable property. + A double. + To be added. + + + Identifies the Minimum bindable property. + To be added. + + + Gets or sets the current value. This is a bindable property. + A double. + To be added. + + + Raised when the property changes. + To be added. + + + Identifies the Value bindable property. + To be added. + + + + that loads an image from a . + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed.. + To be added. + + + Gets or sets the delegate responsible for returning a for the Image. + + + + + Backing store for the property. + To be added. + + + Class that contains triggers, setters, and behaviors that completely or partially define the appearance and behavior of a class of visual elements. + + The class has the following XAML properties: + + + Property + Value + + + BasedOn + + A StaticResource markup extension that names the style on which this style is based. + + + + BaseResourceKey + + A resource dictionary key that names a dynamic base style. + + + + Behaviors + + Markup for the behaviors that are associated with the style. + + + + Setters + + A list of setters containing Property and Value elements or attributes. + + + + TargetType + + The name of the type that the style is intended for. + + + + Triggers + + A list of triggers. + + + + + + + To be added. + Intitializes a new instance. + To be added. + + + The on which this is based. + To be added. + The supports a mechanism in XAML that is similar to inheritance in C#. + + + Gets or sets the key that identifies the on which this is based. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the type of object that this style can describe. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + A control that provides a toggled value. + + The following example describes a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + IsToggled + + + true or false, to indicate whether the switch has been toggled. + + + + Toggled + + The name of an event handler. Note that this tag must appear below IsToggled. + + + + + + + Creates a new element with default values. + To be added. + + + Gets or sets a Boolean value that indicates whether this element is toggled. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when this is toggled by the user. + To be added. + + + A with a label and an on/off switch. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + On + + + true or false, to indicate whether the switch cell is in the "on" position. + + + + OnChanged + + The name of an event handler. Note that this tag must appear below On. + + + + Text + + Text that represents the title of the switch cell. + + + + + + + Initializes a new instance of the SwitchCell class. + To be added. + + + Gets or sets the state of the switch. This is a bindable property. + Default is . + To be added. + + + Triggered when the switch has changed value. + To be added. + + + Identifies the bindable property. + To be added. + + + Gets or sets the text displayed next to the switch. This is a bindable property. + + To be added. + + + Identifies the Text bindable property. + To be added. + + + + that displays an array of tabs across the top of the screen, each of which loads content onto the screen. + + The user interface of a tabbed page consists of a list of items across the top of the screen, and a larger detail area below. The user can scroll the collection of tabs that are across the top of the screen if that collection is too large to fit on one screen. App developers can create tabbed pages in either of two ways. First, application developers can assign a list of objects of a single class, or its subclasses, to the property and assign a to the property to return pages for objects of the least derived type. Second, app developers can add a succession of objects to the property. Both methods are shown in the code examples below. + + The following example code, adapted for brevity from the FormsGallery sample that can be found on the Sample Applications page, shows how to display data of a specific type by assigning a to the property. Note how NamedColorPage gets its color by binding its field. + { + return new NamedColorPage (); + }); + } + } + + // Data type: + class NamedColor + { + public NamedColor (string name, Color color) + { + this.Name = name; + this.Color = color; + } + + public string Name { private set; get; } + + public Color Color { private set; get; } + + public override string ToString () + { + return Name; + } + } + + // Format page + class NamedColorPage : ContentPage + { + public NamedColorPage () + { + // This binding is necessary to label the tabs in + // the TabbedPage. + this.SetBinding (ContentPage.TitleProperty, "Name"); + // BoxView to show the color. + BoxView boxView = new BoxView { + WidthRequest = 100, + HeightRequest = 100, + HorizontalOptions = LayoutOptions.Center + }; + boxView.SetBinding (BoxView.ColorProperty, "Color"); + + // Build the page + this.Content = boxView; + } + } +} + + +]]> + + + The example below creates a tabbed view with two instances. + + + + + + + + + Creates a new element with default values. + To be added. + + + An object for which to create a default page. + Creates a default page, suitable for display in this page, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Called when the parent is set. + This method iterates up the hierarchy and writes a message to the debug listeners if it detects a . Application developers are advised that adding a to a may produce undesirable results. + + + TableIntent provides hints to the renderer about how a table will be used. + Using table intents will not effect the behavior of a table, and will only modify their visual appearance on screen, depending on the platform. Not all intents are unique on all platforms, however it is advisable to pick the intent which most closely represents your use case. + + + A table intended to contain an arbitrary number of similar data entries. + + + A table which is used to contain information that would normally be contained in a form. + + + A table intended to be used as a menu for selections. + + + A table containing a set of switches, toggles, or other modifiable configuration settings. + + + A that contains either a table section or the entire table. + To be added. + + + Constructs and initializes a new instance of the class. + To be added. + + + The title of the table. + Constructs and initializes a new instance of the class with a title. + To be added. + + + A logical and visible section of a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new with the title . + To be added. + + + Abstract base class defining a table section. + + + + + The class has the following XAML property: + + + Property + Value + + + Title + + A title for the section. + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Creates a new object with the specified . + To be added. + + + Gets or sets the title. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + + Table section that contains instances of type T that are rendered by Xamarin.Forms. + + + Sections are used to group cells in the screen and they are the + only valid direct child of the . Sections can contain + any of the standard s, including new s. + + + s embedded in a section are used to navigate to a new + deeper level. + + + You can assign a header and a footer either as strings (Header and Footer) + properties, or as Views to be shown (HeaderView and FooterView). Internally + this uses the same storage, so you can only show one or the other. + + Subtypes of are and , as shown in the following diagram: + + + + + + + + Constructs a new instance with an empty title. + + To be added. + + + To be added. + + Constructs a new instance with the specified . + + To be added. + + + The items to add. + Adds a list of items to this object. + To be added. + + + The item to add. + Adds an item to this object. + To be added. + + + Removes all items in this . + To be added. + + + Event that is raised when one or more items is added to or removed from this object. + To be added. + + + The object for which to determine whether or not this object has a reference. + Returns a Boolean value that indicates whether or not this has a reference to a particular object. + + if this object contains a reference to . Otherwise, . + To be added. + + + To be added. + To be added. + Copies the elements of the current collection to an , starting at the specified index. + To be added. + + + Gets the number of items in this object. + The number of items in this object. + To be added. + + + Returns an enumerator that iterates through the items in this object. + To be added. + To be added. + + + The instance for which to find its index. + Returns the index of the first occurrence of in this object. + The index of the first occurrence of in this object. + To be added. + + + The position at which to insert . + The item to insert. + Inserts an item into this object at the specified position. + To be added. + + + The location of the item to return. + Returns the item that is stored at the location in this object that is specified by . + To be added. + To be added. + + + Calls the method, passing the new binding context, on each of the items in this object. + To be added. + + + To be added. + Removes a specified item from this object. + + , if item was removed from the current collection; if item was not found in the current collection.. + To be added. + + + The position in this object from which to remove an item. + Removes a specified item from this object at the position that is specified by . + To be added. + + + Returns ; The collection of objects in this can be changed. + + ; The collection of objects in this object can be changed. + To be added. + + + Returns an enumerator that iterates through the collection of objects in this object. + To be added. + To be added. + + + A that holds rows of elements. + + A has a as its property. The is a type of . + The following example shows a basic table with two sections. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasUnevenRows + + + true or false, to indicate whether rows in the table view will specify their own height. + + + + Intent + + + Data, Form, Menu, or Settings. + + + + RowHeight + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the rows that are contained in this can have uneven rows. + To be added. + + When the property is , application developers can set the properties to control the height of items in the table. When the property is , the property is ignored. When the property is , app developers can set the property to set the height of all Cells, and their individual properties are ignored. + + + + Backing store for the HasUnevenRows property. + To be added. + + + Gets or sets the intent of the table. + To be added. + To be added. + + + Method that is called when the binding context changes. + To be added. + + + Method that is called when the model changes. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made. + To be added. + To be added. + + + Gets or sets the root of the table. + To be added. + To be added. + + + Gets or sets the row height. + To be added. + To be added. + + + Backing store for the row height property. + To be added. + + + Provides tap gesture recognition and events. + Can be used to recognize single and multiple tap gestures. + + + Initializes a new instance of a TapGestureRecognizer object. + + + + An action whose first argument is the View the recognizer is associated with and whose second argument is the callback parameter. + Initializes a new instance of a TapGestureRecognizer object with a parameterized callback. + + + + An action whose first argument is the View the recognizer is associated with. + Initializes a new instance of a TapGestureRecognizer object with a callback. + + + + The Command to invoke when the gesture has been triggered by the user. This is a bindable property. + To be added. + The object passed to the Command will be the contents of + + + An object to be passed to the TappedCallback. This is a bindable property. + To be added. + To be added. + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + The number of taps required to trigger the callback. This is a bindable property. + The number of taps to recognize. The default value is 1. + + + + Identifies the NumberOfTapsRequired bindable property. + To be added. + + + Event that is raised when the user taps. + To be added. + + + The action to invoke when the gesture has been triggered by the user. This is a bindable property. + An action that will be invoked. + The object passed to the callback will be the contents of . + + + An object to be passed to the TappedCallback. This is a bindable property. + An object. + The primary use case for this property is Xaml bindings. + + + Identifies the TappedCallbackParameter bindable property. + + + + Identifies the TappedCallback bindable property. + + + + Arguments for the event. + To be added. + + + To be added. + Creates a new object with the supplied parameter. + To be added. + + + Gets the parameter object for this object. + To be added. + To be added. + + + Indicates the type of device Forms is working on. + + + + (Unused) Indicates that Forms is running on a computer. + + + Indicates that Forms is running on a Phone, or a device similar in shape and capabilities. + + + Indicates that Forms is running on a Tablet. + + + (Unused) Indicates that Forms is running on an unsupported device. + + + Indicates the kind of OS Forms is currently working on. + + + + Indicates that Forms is running on a Google Android OS. + + + Indicates that Forms is running on an Apple iOS OS. + + + (Unused) Indicates that Forms is running on an undefined platform. + + + Indicates that Forms is running on a Microsoft WinPhone OS. + + + Extension class for DataTemplate, providing a string-based shortcut method for defining a Binding. + To be added. + + + To be added. + To be added. + To be added. + Binds the object's to a new instance that was created with . + To be added. + + + Represents vertical and horizontal text alignement. + This affects the way the text is diaplayed inside of its control bounds. + + + Center-aligned text. + + + End-flushed text. It means right-aligned (resp: bottom-aligned) for horizontal (resp vertical) alignemnt. + + + Start-flushed text. It means left-aligned (resp: top-aligned) for horizontal (resp vertical) alignemnt. + + + + A with primary and text. + + + The following example shows a basic use. + + + + + + + + + + Initializes a new instance of the TextCell class. + + + + Gets or sets the ICommand to be executed when the TextCell is tapped. This is a bindable property. + + Setting the Command property has a side effect of changing the Enabled property depending on ICommand.CanExecute. + + + Gets or sets the parameter passed when invoking the Command. This is a bindable property. + + + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + Gets or sets the secondary text to be displayed in the TextCell. This is a bindable property. + + + + + Gets or sets the color to render the secondary text. This is a bindable property. + The color of the text. Color.Default is the default color value. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. + + + Identifies the DetailColor bindable property. + + + + Gets or sets the secondary text to be displayed. This is a bindable property. + + + + Invoked whenever the Cell is Tapped. + Overriden for TextCell. + + + Gets or sets the primary text to be displayed. This is a bindable property. + + + + + Gets or sets the color to render the primary text. This is a bindable property. + The color of the text. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. Color.Default is the default color value. + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + Event arguments for TextChanged events. Provides old and new text values. + To be added. + + + To be added. + To be added. + Creates a new with and . + To be added. + + + Gets the new text value. + To be added. + To be added. + + + Gets the old text value. + To be added. + To be added. + + + Struct defining thickness around the edges of a using doubles. + To be added. + + + To be added. + Creates a new object that represents a uniform thickness of size . + To be added. + + + To be added. + To be added. + Creates a new object that has a horizontal thickness of and a vertical thickness of . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with thicknesses defined by , , , and . + To be added. + + + The thickness of the bottom of a rectangle. + To be added. + To be added. + + + A to be compared. + Whether the is a with equivalent values. + + if is a and has equivalent values.. + To be added. + + + A has value for this . + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + The thickness of the left side of a rectangle. + To be added. + To be added. + + + A to be compared. + A to be compared. + Whether two es have identical values. + + if and have identical values for ,, , and . + To be added. + + + The value for the uniform Thickness. + Implicit cast operator from . + A Thickness with an uniform size. + + Application developers should bear in mind that and are the sums of their components, so a created from a of, for instance, 1.0, will have of 2.0. + + + + A to convert to a + Converts a into a . + To be added. + + The 's and are both set equal to the 's and the 's and are both set equal to the 's . + + + + A to be compared. + A to be compared. + Whether the values of two 's have at least one difference. + + if any of the ,, , and values differ between and . + To be added. + + + The thickness of the right side of a rectangle. + To be added. + To be added. + + + The thickness of the top of a rectangle. + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that provides time picking. + + The visual representation of a TimePicker is very similar to the one of , except that a special control for picking a time appears in place of a keyboard. + + The following example shows declaration of a TimePicker with a default time set. + + + + + + + + + + + Initializes a new TimePicker instance. + + + + The format of the time to display to the user. This is a bindable property. + A valid time format string. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format bindable property. + + + + Gets or sets the displayed time. This is a bindable property. + The displayed in the TimePicker. + To be added. + + + Identifies the Time bindable property. + + + + Event arguments for and events. + To be added. + + + To be added. + Creates a new that indicates that the toggle control was toggled to . + To be added. + + + Gets the Boolean value to which the toggle control was toggled. + To be added. + To be added. + + + An item in a toolbar or displayed on a . + + Any changes made to the properties of the toolbar item after it has been added will be ignored. + Windows Phone ApplicationBarButtons and MenuItems always display an associated text. Therefore, when developing for Windows Phone, application devs should provide a value for the property. Otherwise, the file name of the icon image will be dixplayed as the text of the . (For example, the user might see "menu.png" in the user interface.) + + + + Constructs and initializes a new instance of the class. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constructs and initializes a new instance of the class. + + + + Raised when the is touched or clicked. + + + + Gets or sets the to be invoked on activation. + The to be invoked on activation. + + + + Gets or sets the parameter to pass to the that is invoked on activation. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets a string that identifies the image that is displayed on this element. + To be added. + To be added. + + + Gets or sets the name of the . + The name of the toolbar item.. + + + + Gets or sets a value that indicates on which of on the primary, secondary, or default toolbar surfaces to display this element. + To be added. + To be added. + + + Gets or sets the priority of this element. + To be added. + To be added. + + + Gets or sets the toolbar to which this element belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying whether the appears on the primary toolbar surface or secondary. + To be added. + + + Use the default choice for the toolbar item. + + + Place the toolbar item on the primary toolbar surface. + + + Place the toolbar item on the secondary toolbar surface. + + + Class that represents a property condition and an action that is performed when the condition is met. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the property whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the property that is named by becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the property, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + This property supports XAML infrastructure and is not intended to be directly used by application developers. + To be added. + To be added. + + + A base class for user-defined actions that are performed when a trigger condition is met. + Application developers should use , instead. + + + The type of the objects with which this can be associated. + Creates a new instance of the TriggerAction class. + + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to provide the behavior that is triggered. + To be added. + + + The type of which the property must be an instance. + A generic base class for user-defined actions that are performed when a trigger condition is met. + + + + Creates a new instance of the class. + + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + Base class for classes that contain a condition and a list of actions to perform when the condition is met. + + + + Gets the list of objects that will be invoked when the trigger condition is met. Ignored for the class. + + + + + Gets the list of objects that will be invoked after the trigger condition is no longer met. Ignored for the class. + + + + + Gets a value that indicates whether or not the trigger is sealed. + To be added. + A trigger becomes sealed when its method is called. Once it is sealed, its and lists become readonly. + + + The type of object to which this object can be attached. + To be added. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + This method throws an exception if is not an instance of . In that case, the method is not called. + + + To be added. + Attempts to detach from . If successful, calls .. + This method throws an exception if is . In that case, the method is not called. + + + Abstract base class whose subclasses can convert values between different types. + + The following diagram shows subclasses of . + + + + + + + Creates a new object. + To be added. + + + To be added. + When implemented in a derived class, returns a Boolean value that indicates whether or not the derived type converter can convert to its target type. + To be added. + To be added. + + + To be added. + Calls with the current culture information and . + To be added. + To be added. + + + To be added. + To be added. + When implemented in a derived class, converts an object that is a version of and that can be cast to the target type. + To be added. + To be added. + + + Attribute that specifies the type of used by its target. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new object that specifies that the class it decorates converts values to the type. + To be added. + + + To be added. + reates a new object that specifies that the class it decorates converts values to . + To be added. + + + The name of the type to which the class decorated with this attribute can convert values. + To be added. + To be added. + + + A that contains no information about the types to which the class that it decorates can convert values. + To be added. + + + To be added. + Returns true if is a and has the same value. + To be added. + To be added. + + + Returns a value that is used for efficient storage and lookup of this object. + To be added. + To be added. + + + Exception indicating that the s specified cannot be simultaneously satisfied. + To be added. + + + A description for this exception. + Creates a new object with the explanatory message. + To be added. + + + An ImageSource that loads an image from a URI, caching the result. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets a structure that indicates the length of time after which the image cache becomes invalid. + To be added. + To be added. + + + Gets or sets a Boolean value that indicates whether caching is enabled on this object. + To be added. + To be added. + + + Gets or sets the URI for the image to get. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A that converts from a string or to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A WebViewSource bound to a URL. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the URL for this object. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for ValueChanged events. Provides both old and new values. + To be added. + + + To be added. + To be added. + Creates a new event with and . + To be added. + + + Gets the new value. + To be added. + To be added. + + + Gets the old value. + To be added. + To be added. + + + Struct defining X and Y double values. + To be added. + + + To be added. + To be added. + Creates a new that is defined by and . + To be added. + + + The horizontal coordinate. + To be added. + + + The vertical coordinate. + To be added. + + + A visual element that is used to place layouts and controls on the screen. + + The class is a base class for the class, and most of the controls that application developers will use. Nearly all UI elements that an application developer will use are derived from class. Because the class ultimately inherits from class, application developers can use the Model-View-ViewModel architecture, as well as XAML, to develop portable user interfaces. The remarks in the topic provide a discussion of MVVM and bound properties. + + + + Initializes a new instance of the View class. + It is unlikely that an application developer would want to create a new View instance on their own. + + + The collection of gesture recognizers associated with this view. + A List of . + + + Adding items to this collection will associate gesture events with this element. This is not nessesary for elements which natively support input, such as a Button. + + + This example creates a tap gesture recognizer and associates it with an image. When the image is double tapped, it will become semi-transparent. + + + image.Opacity = 0.5, + NumberOfTapsRequired = 2 + }; + image.GestureRecognizers.Add (gestureRecognizer); + ]]> + + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the HorizontalOptions modifies how the element is laid out when there is excess space available along the X axis from the parent layout. Additionally it specifies if the element should consume leftover space in the X axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the HorizontalOptions bindable property. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + Overriders must call the base method. + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the VerticalOptions modifies how the element is laid out when there is excess space available along the Y axis from the parent layout. Additionally it specifies if the element should consume leftover space in the Y axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the VerticalOptions bindable property. + + + + A containing a developer-defined . + + + + Initializes a new instance of the ViewCell class. + + + + Gets or sets the View representing the content of the ViewCell. + + + + + Extension methods for s, providing animatable scaling, rotation, and layout functions. + To be added. + + + To be added. + Aborts the TranslateTo, LayoutTo, RotateTo, ScaleTo, and FadeTo animations on element. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the fade that is described by the , , and parameters. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that eases the bounds of the that is specified by the to the rectangle that is specified by the parameter. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Rotates the that is specified by from its current rotation by . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by from its current scale to . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the rotation that is described by the , , and parameters.. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the Y axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the X axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by to the absolute scale factor . + To be added. + To be added. + + + The view to tanslate. + The x component of the final translation vector. + The y component of the final translation vector. + The duration of the animation in milliseconds. + The easing of the animation. + Animates an elements TranslationX and TranslationY properties from their current values to the new values. + To be added. + Translate to is particular useful for animations because it is applied post-layout. Translation animations will not conflict with managed layouts and thus are ideal for doing slide in/out style animations. + + + Deprecated. Do not use. + To be added. + + + Deprecated. Do not use. + + + Deprecated. Do not use. + + + Deprecated. Do not use.. + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + The base class for most Xamarin.Forms on-screen elements. Provides most properties, events, and methods for presenting an item on screen. + + + + Gets or sets the X component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the X component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorX bindable property. + To be added. + + + Gets or sets the Y component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the Y component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorY bindable property. + To be added. + + + Gets or sets the color which will fill the background of a VisualElement. This is a bindable property. + The color that is used to fill the background of a VisualElement. The default is . + To be added. + + + Identifies the BackgroundColor bindable property. + To be added. + + + Signals the start of a batch of changes to the elements properties. + Application authors will not generally need to batch updates manually as the animation framework will do this for them. + + + Signals the end of a batch of commands to the element and that those commands should now be committed. + This method merely ensures that updates sent during the batch have been committed. It does not ensure that they were not committed before calling this. + + + Gets the list of Behavior associated to this element. This is a bindable propery. + + + + + Identifies the Behaviors bindable property. + + + + Gets the bounds of the element. + The bounds of an element, in device-independent units. + Bounds is assigned during the Layout cycle by a call to . + + + + + Occurs when the Children of a VisualElement have been re-ordered. + + + + Attemps to set focus to this element. + + if the keyboard focus was set to this element; if the call to this method did not force a focus change. + Element must be able to receive focus for this to work. Calling Focus on offscreen or unrealized elements has undefined behavior. + + + Occurs when the element receives focus. + Focused event is raised whenever the VisualElement receives focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + + + The available width that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the element. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of your app. Overriding GetSizeRequest should only be done if you want to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + Gets the current rendered height of this element. This is a read-only bindable property. + The renderered height of this element. + The height of an element is set during the Layout phase. + + + Identifies the Height bindable property. + + + + Gets or sets the desired height override of this element. + The height this element desires to be. + HeightRequest does not immediately change the Bounds of a VisualElement, however setting the HeightRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the HeightRequest property. + To be added. + + + Gets or sets a value indicating whether this element should be involved in the user interaction cycle. This is a bindable property. + + if the element should be able to receive input; if element should not receive input and should pass inputs to the element below. Default is true. + Setting InputTransparent is not the same as setting IsEnabled to false. Setting InputTransparent only disables inputs and instead causes them to be passed to the VisualElement below the element. Usually this is the parent of the element. + + + + Identifies the InputTransparent bindable property. + + + + Method that is called to invalidate the layout of this . Raises the event. + To be added. + + + Gets or sets a value indicating whether this element is enabled in the user interface. This is a bindable property. + + if the element is enabled; otherwise, . The default value is + + + Elements that are not enabled do not participate in hit detection, and therefore will not receive focus or emit input events. + + + The following example shows a handler on a button which will then set IsEnabled to false on another button. + + + button2.IsEnabled = false; + } + } + ]]> + + + + + Identifies the InputTransparent bindable property. + + + + Gets a value indicating whether this element is focused currently. This is a bindable property. + + if the element is focused; otherwise, . + + + Applications may have multiple focuses depending on the implementation of the underlying toolkit. Menus and modals in particular may leave multiple items with focus. + + + The following example shows conditionally setting a background color based on the focus state. + + + + + + + + Identifies the IsFocused bindable property. + + + + Gets or sets a value that determines whether this elements should be part of the visual tree or not. This is a bindable property. + + if the element should be rendered; otherwise, . Default value is . + + Setting IsVisible to false will remove the element from the visual tree. The element will no longer take up space in layouts or be eligle to receive any kind of input event. + + The following example shows a stack where the middle element is toggled when a button is activated. + + + + + + + + Identifies the IsVisible bindable property. + + + + The new bounds of the element. + Updates the bounds of the element during the layout cycle. + Calling Layout will trigger a layout cycle for the sub-tree of this element. + + + Event that is raised when the layout of a visual element is invalidated. + To be added. + + + Gets or sets a value which overrides the minimum height the element will request during layout. + The minimum height the element requires. Default value is -1. + + + MinimumHeightRequest is used to override the results of a call to by setting the minimum height property. This causes overflow handling to shrink this element to its minimum height before elements who do not have a minimum size set. + + + The following example sets the MinimumHeightRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumHeightRequest property. + To be added. + + + Gets or sets a value which overrides the minimum width the element will request during layout. + The minimum width the element requires. Default value is -1. + + + MinimumWidthRequest is used to override the results of a call to by setting the minimum width property. This causes overflow handling to shrink this element to its minimum width before elements who do not have a minimum size set. + + + The following example sets the MinimumWidthRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumWidthRequest property. + To be added. + + + Gets the context aware navigation interface for the element. + An that allows for navigation using the ancestral navigation implementor. + + + Use the Navigation property to perform navigation from any element. If the element has not yet been added to a tree which contains a navigation implementor, the actions are queued up until it is. + + + The following example navigates to a new page created in the callback of a buttons event. + + + + + + + Identifies the Navigation bindable property. + + + + Invoked whenever the event is about to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + It is required to call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. Most layouts will want to implement this method in order to layout their children during a layout cycle. + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + A which contains the desired size of the element. + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the opacity value applied to the element when it is rendered. This is a bindable property. + The opacity value. Default opacity is 1.0. Values will be clamped between 0 and 1 on set. + + + The opacity value has no effect unless IsVisible is . Opacity is inherited down the element hierarchy. If a parent has 0.5 opacity, and a child has 0.5 opacity, the child will render with an effective 0.25 opacity. Setting opacity to 0 has undefined behavior with input elements. + + + The following example sets the opacity of a layout to 0.5 and the opacity of one of its children to 0.5, making the child 25% opaque. + + + + + + + + Identifies the Opacity bindable property. + + + + Gets or sets the local resource dictionary. + The current resource dictionary, where resources are stored by key. + + In XAML, resource dictionaries are filled with key/value pairs that are specified in XML and consequently created at run time. The keys in the resource dictionary are specified with the x:Key attribute of the XML tag for the type to create. An object of that type is created, and is initialized with the property and field values that are specified either by additional attributes or by nested tags, both of which, when present are simply string representations of the property or field names. The object is then inserted into the for the enclosing type at runtime. + + For example, the XAML below, taken from the XAML for Xamarin.Forms series, creates a resource dictionary that contains object constants that can be used for any objects that are added to the surrounding : + + + + + + + +]]> + Note that the above snippet is only valid when nested within a <ContentPage>...</ContentPage> tag pair. Within that pair, the app developer can use both of the horzOptions and vertOptions keys to specify values for properties of type by using the "{...}" static resource syntax. The short example below, also taken from the XAML for Xamarin.Forms series, illustrates this syntax: + ]]> + Resource dictionaries and their associated XML provide the application developer with a convenient method to reuse code inside the XAML compile-time and run-time engines. + + + + + Gets or sets the rotation about the Z-axis (affine rotation) when the element is rendered. + The rotation about the Z-axis in degrees. + Rotation is applied relative to and . + + + Identifies the Rotation bindable property. + + + + Gets or sets the rotation about the X-axis (perspective rotation) when the element is rendered. + The rotation about the X-axis in degrees. + RotationX is applied relative to and . + + + Identifies the RotationX bindable property. + + + + Gets or sets the rotation about the Y-axis (perspective rotation) when the element is rendered. + The rotation about the Y-axis in degrees. + RotationY is applied relative to and . + + + Identifies the RotationY bindable property. + + + + Gets or sets the scale factor applied to the element. + The scale factor of the element. Default value is 1.0. + Scale is applied relative to and . + + + Identifies the Scale bindable property. + + + + The newly allocated width. + The newly allocated height. + SizeAllocated is called during a layout cycle to signal the start of a sub-tree layout. + Calling SizeAllocated will start a new layout cycle on the children of the element. Excessive calls to SizeAllocated may cause performance problems. + + + Occurs when either the Width or the Height properties change value on this element. + Classes should implement if they wish to respond to size change events directly. + + + Gets or sets the style that defines how this visual element is displayed. + To be added. + To be added. + + + Backing store for the Style property. + To be added. + + + Gets or sets the X translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationX bindable property. + + + + Gets or sets the Y translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationY bindable property. + + + + Gets the list of Trigger associated to this element. This is a bindable property. + + + + + Identifies the Triggers bindable property. + + + + Unsets focus to this element. + Element must already have focus for this to have any effect. + + + Occurs when the element loses focus. + Unfocused event is raised whenever the VisualElement loses focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + Gets the current rendered width of this element. This is a read-only bindable property. + The renderered width of this element. + The width of an element is set during the Layout phase. + + + Identifies the Width bindable property. + + + + Gets or sets the desired width override of this element. + The width this element desires to be. + WidthRequest does not immediately change the Bounds of a VisualElement, however setting the WidthRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the WidthRequest property. + To be added. + + + Gets the current X position of this element. This is a read-only bindable property. + The X position of this element relative to its parents bounds. + The x value of an element is set during the Layout phase. + + + Invalidates the measure when the native size of the element changes. + To be added. + + + Identifies the X bindable property. + + + + Gets the current Y position of this element. This is a read-only bindable property. + The Y position of this element relative to its parents bounds. + The y value of an element is set during the Layout phase. + + + Identifies the Y bindable property. + + + + Class that contains arguments for the event that is raised after web navigation completes. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets a value that describes the result of the navigation. + To be added. + To be added. + + + Class that contains arguments for the event that is raised after web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether or not to cancel the navigation. + To be added. + To be added. + + + Contains values that indicate why a navigation event was raised. + To be added. + + + Indicates that the navigation resulted from the user going back to a previous page in the navigation history. + + + Indicates that the navigation resulted from the user going forward to a later page in the navigation history. + + + Indicates that the navigation was to a preiously unvisited page, according to the navigation history. + + + Indicates that the navigation resulted from a page refresh. + + + TClass that contains arguments for the event that is when web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets the navigation event that was raised. + To be added. + To be added. + + + Gets the element that performed the navigation. + To be added. + To be added. + + + The destination of the navigation. + To be added. + To be added. + + + Enumerates values that indicate the outcome of a web navigation. + To be added. + + + The navigation was cancelled. + + + The navigation failed. + + + The navigation succeeded. + + + The navigation timed out. + + + A that presents HTML content. + + The following example shows a basic use. + + + + + + + + + + Creates a new element with default values. + To be added. + + + Gets a value that indicates whether the user can navigate to previous pages. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Gets a value that indicates whether the user can navigate forward. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A script to evaluate. + Evaluates the script that is specified by . + To be added. + + + Navigates to the previous page. + To be added. + + + Navigates to the next page in the list of visited pages. + To be added. + + + Event that is raised after navigation completes. + To be added. + + + Event that is raised when navigation starts. + To be added. + + + To be added. + Method that is called when is changed. + To be added. + + + To be added. + To be added. + Method that is called when the view source that is specified by the parameter is changed. + To be added. + + + Gets or sets the object that represents the location that this object displays. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Abstract class whose subclasses provide the data for a . + To be added. + + + Creates a new object with default values. + To be added. + + + Method that is called when the source is changed. + To be added. + + + To be added. + Casts a string that contains a URL to a instance. + To be added. + To be added. + + + To be added. + Casts a object to a instance. + To be added. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Defines the interface for Xamarin.Forms XAML markup extensions. + + + Types implementing this interface can be used as custom XAML markup extension. + + + The following example shows declaration of a custom markup extension. + + + The markup extension can be used directly in XAML + + + + + To be added. + Returns the object created from the markup extension. + The object + + + + Interface that defines a target and property to which a value is provided. + To be added. + + + Gets the target object. + To be added. + To be added. + + + Gets an object that identifies the target property. + To be added. + To be added. + + + Interface that defines the ability to return a root object, for instance, the top-level in a layout. + To be added. + + + The root object. + To be added. + To be added. + + + Interface defining the ability to resolve a qualified type name into a Type. + To be added. + + + To be added. + Returns the resolved type. + To be added. + To be added. + + + To be added. + To be added. + Tries to resolve a type name, putting the type value in , and returns a Boolean value that indicates whether the operation succeeded. + To be added. + To be added. + + + Exception that is thrown when the XAML parser encounters an error. + To be added. + + + Information about the condition that caused the exception to be thrown. + To be added. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Platform.iOS.Classic.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Platform.iOS.Classic.dll new file mode 100644 index 0000000..5c07f93 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Platform.iOS.Classic.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Xaml.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Xaml.dll new file mode 100644 index 0000000..6d49db3 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Xaml.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Xaml.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Xaml.xml new file mode 100644 index 0000000..3a50b08 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/MonoTouch10/Xamarin.Forms.Xaml.xml @@ -0,0 +1,137 @@ + + + Xamarin.Forms.Xaml + + + + Markup extension for parsing arrays. + To be added. + + + Creates a new with default values. + To be added. + + + Returns a list of the items in this . + To be added. + To be added. + + + To be added. + Returns an array that contains items of the type that is specified by the property. + To be added. + To be added. + + + Gets or sets the type of the items that can be stored in the array. + To be added. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + To be added. + + + To be added. + Internal. + To be added. + To be added. + + + Extension class for defining method. + To be added. + + + To be added. + To be added. + To be added. + Configures with the properties that are defined in the application manifest for . + To be added. + To be added. + + + Extension class that differentiates between null values and empty strings. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns the null object. + To be added. + To be added. + + + Markup extension for referring to other XAML-defined types. + To be added. + + + Creates a new with default values. + To be added. + + + Gets or sets the name of the entity to reference. + To be added. + To be added. + + + To be added. + Returns an object that represents the type that was referred to. + To be added. + To be added. + + + A markup extension that gets a static member value. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the member name. + To be added. + To be added. + + + To be added. + Returns the value of the member. + To be added. + To be added. + + + A markup extension for parsing type descriptors. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns an object that represents the type specified by the markup. + To be added. + To be added. + + + Gets or sets the name of the type. + To be added. + To be added. + + + Exception that is raised when the XAML parser encounters a XAML error. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Core.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Core.dll new file mode 100644 index 0000000..78dbe04 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Core.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Core.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Core.xml new file mode 100644 index 0000000..db18b55 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Core.xml @@ -0,0 +1,13626 @@ + + + Xamarin.Forms.Core + + + + Positions child elements at absolute positions. + + Application developers can control the placement of child elements by providing proportional coordinates, device coordinates, or a combination of both, depending on the values that are passed to method. When one of the proportional enumeration values is provided, the corresponding X, or Y arguments that range between 0.0 and 1.0 will always cause the child to be displayed completely on screen. That is, you do not need to subtract or add the height or width of a child in order to display it flush with the left, right, top, or bottom of the . For width, height, X, or Y values that are not specified proportionally, application developers use device-dependent units to locate and size the child element. + + The following example shows how to use an with proportional position arguments. + + The code sample below shows how to place two labels by specifying device-dependent units. + + + The following image shows the AbsoluteLayout demo from the FormsGallery sample. + + + + + + The class has the following XAML attached properties: + + + Attached Property + Value + + + AbsoluteLayout.LayoutBounds + + A comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + AbsoluteLayout.LayoutFlags + + + enumeration value names: All, None, HeightProportional, WidthProportional, SizeProportional, XProportional, YProportional, or PositionProportional. Application developers can combine any of these flags together by supplying a comma-separated list. + + + + Application developers can use XAML to lay out elements with the class. The example below places a blue inside an : + + + +]]> + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Initializes a new instance of the AbsoluteLayout class. + To be added. + + + A value that indicates that the width or height of the child should be sized to that childs native size. + + + Application developers can set the width or height of the property to on a visual element when adding to the layout to cause that element to be measured during the layout pass and sized appropriately. + + + + Gets the collection of child elements of the AbsoluteLayout. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the AbsoluteLayout class. + + + + A visual element. + Gets the layout bounds of . + The layout bounds of the object. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + A visual element. + Gets the layout flags that were specified when was added to an . + The layout flags of the object. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. + + + + Implements the attached property that represents the layout bounds of child elements. Bindable at run time with the string "LayoutBounds". See Remarks. + The interface for this property is defined by the and methods. + + + + The X coordinate of the region that contains the child elements and that is used to calulate proportional values. + The Y coordinate of the region that contains the child elements and that is used to calulate proportional values. + The width of the the region that contains the child elements and that is used to calulate proportional values. + The height of the region that contains the child elements and that is used to calulate proportional values. + Positions and sizes the children of an AbsoluteLayout. + + Application developers can override to change the default behavior of . When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + Implements the attached property that contains the values for child elements. + The interface for this property is defined by the and methods. + + + + The element that was added to the children. + Called when a child is added to the . + + Application developers can override to change the default behavior thata is triggered when a child is added. When doing so, it is recommended to call the base method and then add additional logic. + + + + The element that was removed from the children. + Called when a child is removed from the . + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then add additional logic. + + + + The available width for the AbsoluteLayout to use. + The available height for the AbsoluteLayout to use. + Called during the measure pass of a layout cycle to get the desired size of the AbsoluteLayout. + A which contains the desired size of the AbsoluteLayout. + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + The view to delimit by . + A rectangle that represents the desired size and shape of . + Sets the layout bounds of a view that will be used to size it when it is layed out. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. Application developers can call this method to update the layout of a view after it is added. + + + + The view on which to set the layout flags. + A that describes the how to interpret the layout bounds for . + Sets the layout flags of a view that will be used to interpret the layout bounds set on it when it is added to the layout. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. Application developers can call this method to update the layout flags of a view after it is added. + + + + The type of elements in the absolute layout. + List interface with overloads for adding elements to an absolute layout. + + + + The view to add. + The location at which to position the view. + Adds a view to the list at the specified location with automatic sizing. + + + + The view to add. + The bounds to layout the view with. + The flags to interpret bounds with. + Adds a view to the list with the specified bounds and flags. + + + + Flags used to modify how layout bounds are interpreted in an . + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Interpret all dimensions proportionally. + + + Interpret height property as proportional to layout height. + + + Disable all flags. + + + Equivalent to both XProportional | YProportional. + + + Equivalent to both WidthProportional | HeightProportional. + + + Interpret width property as proportional to layout width. + + + Interpret x property as proportional to the remaining space after width is accounted for. + + + Interpret y property as proportional to the remaining space after height is accounted for. + + + A visual control used to indicate that something is ongoing. + + This control gives a visual clue to the user that something is happening, without information about its progress. + + + + The class has the following XAML properties: + + + Property + Value + + + Color + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + IsRunning + + + or , to indicate whether the animation for is displayed. + + + + + The example below creates a red activity indicator that is animated to imply that an activity is ongoing: + ]]> + + + + + Initializes a new instance of the ActivityIndicator class. + + The following example shows the initialization of a running ActivityIndicator. + + + + + + + + Gets or sets the of the ActivityIndicator. This is a bindable property. + A used to display the ActivityIndicator. Default is . + + + + Identifies the Color bindable property. + + + + Gets or sets the value indicating if the ActivityIndicator is running. This is a bindable property. + A indicating if the ActivityIndicator is running. + + + + Identifies the Color bindable property. + + + + Encapsulates an animation, a collection of functions that modify properties over a user-perceptible time period. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Runs the animation with the supplied parameters. + To be added. + + + Returns a callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + A callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + To be added. + + + Returns an enumerator that can be used to iterate over the child objects of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds to the children of this object and sets the start and end times of to and , respectively. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters, and adds it to the children of this object. + To be added. + To be added. + + + Extension methods for . + To be added. + + + To be added. + To be added. + Stops the animation. + To be added. + If refers to an animation that belongs to this instance, then its tweener handlers are removed, the tweener is stopped, the animation is removed from this instance, and it is marked as finished. If refers to one of the kinetics that belong to this instance, then it and its ticker are removed. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the kinetic animation. + To be added. + + + To be added. + To be added. + Returns a Boolean value that indicates whether or not the animation that is specified by is running. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a function that performs a linear interpolation between and . + A function that performs a linear interpolation between and . Application developers can pass values between 0.0f and 1.0f to this function in order to recieve a value that is offset from or , depending on the value of , by the passed value times the distance between and . + If is , then the interpolation happens between and . + + + Class that represents a cross-platform mobile application. + To be added. + + + Initializes a new instance. + To be added. + + + Gets the current application. + To be added. + To be added. + + + Gets or sets the main page of the application. + To be added. + This property throws an exception if the application developer attempts to set it to . + + + Throws . + To be added. + + + Application developers override this method to perform actions when the application resumes from a sleeping state. + To be added. + + + Application developers override this method to perform actions when the application enters the sleeping state. + To be added. + + + Application developers override this method to perform actions when the application starts. + To be added. + + + Gets the dictionary of properties for this object. + To be added. + To be added. + + + Gets or sets the resource dictionary for this object. + To be added. + To be added. + + + Defines how an image is displayed. + + + + Scale the image to fill the view. Some parts may be clipped in order to fill the view. + + + + Scale the image to fit the view. Some parts may be left empty (letter boxing). + + + Scale the image so it exactly fill the view. Scaling may not be uniform in X and Y. + + + Contains arguments for the event that is raised when a back button is pressed. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the back button event has already been handled. + To be added. + To be added. + + + Base class for menu items. + To be added. + + + Intializes a new instance. + To be added. + + + Base class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize the generic class, instead of directly using . + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + To be added. + + + To be added. + Detaches from . Calls the method. + To be added. + + + The type of the objects with which this can be associated. + Base generic class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize this generic class, instead of directly using . + + + Creates a new instance. + + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + Provides a mechanism by which application developers can propagate changes that are made to data in one object to another, by enabling validation, type coercion, and an event system. . + + The class provides a data storage mechanism that enables the application developer to synchronize data between objects in response to changes, for example, between the View and View Model in the MVVM design pattern. All of the visual elements in the namespace inherit from class, so they can all be used to bind the data behind their user interface elements to View Models that are supplied by the application developer. + + To bind the data behind a property in a , typically a view, to a property in the View Model, application developers should do the following. + First, the developer creates a pair of properties on the view, one of which is a , and the other of which is a property of whatever type is required. In the code below, MockBindableObject stands in for what would typically be a user interface object in production code. Application developers should note the use of and to get and set the value on the bound property; The property of the desired type provides the interface that the target of the bound property will implement. + ( + // o => o.Foo, default (string) + // ); + + public string BoundName + { + get { return (string) GetValue (BoundNameProperty); } + set { SetValue (BoundNameProperty, value); } + } +} + ]]> + Second, the developer creates the implementation for the bound property in a class that implements the interface. In the MVVM design pattern, this is typically done by the View Model. Application developers should implement the interface on classes that they want to use as View Models. In the example below, app developers should take note of the idiomatic way that the Name property is implemented to, first, ensure that the property actually changed and return if it did not, and only then assign the value and call the method. Additionally, the Name property in the example below merely wraps the name field. In practice, the application developer may choose a different model in which to store application data. + + Third, and finally, the application developer binds an instance of a BindableObject to an instance that implements INotifyPropertyChanged. In the vocabulary of the MVVM design pattern, this is "binding an instance of the View to an instance of a View Model." Once this step is complete, changes in the data are propagated between the View and View Model in a way that is determined by the value of the enumeration, if any, that was passed during the binding step. + The code below, when included in a project that reference the classes above, creates an instance of both MockBindable and MockViewModel, performs some intitialization, sets the binding, and then demonstrates a one-way binding. The code below runs without throwing an exception. + + + + + + Initializes a new instance of the BindableObject class. + The class is abstract, and this constructor is protected. It is invoked by child constructors. + + + The object that contains the properties that will be targeted by the bound properties that belong to this . This parameter is optional. + Apply the bindings to this. + + If an object is passed for the argument, bindings are first unapplied from . This method removes any current bindings from the old context, and applies every binding to the current . Application developers could use this method to bind the UI from a new View to an existing ViewModel, while optionally removing the bindings from the old View. Application developers can omit the argument in order to leave the old bindings in place. + + + + Gets or sets object that contains the properties that will be targeted by the bound properties that belong to this . + An that contains the properties that will be targeted by the bound properties that belong to this . This is a bindable property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to apply a BindingContext and a Binding to a Label (inherits from BindableObject): + + + + + + + Raised whenever the property changes. + + + + Implements the bound property whose interface is provided by the property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to set a binding to the BindingContext: + + + + + + + The BindableProperty to clear. + Clears any value set by for . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindablePropertyKey that identifies the to clear. + Clears any value set by for the property that is identified by . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindableProperty for which to get the value. + Returns the value that is contained the BindableProperty. + The value that is contained the . + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + Override this method to execute an action when the BindingContext changes. + + + + The name of the property that changed. + Call this method from a child class to notify that a change happened on a property. + + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + + The name of the property that is changing. + Call this method from a child class to notify that a change is going to happen on a property. + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + Raised when a property has changed. + + + + Raised when a property is about to change. + + + + The BindableProperty from which to remove bindings. + Removes a previously set binding. + + This method succeeds even if is not bound. + + + + The BindableProperty on which to set a binding. + The binding to set. + Assigns a binding to a property. + + The following example shows how to set a binding to a property: + + + + + + + The object on which to set the inherited binding context. + The inherited context to set. + Sets the inherited context to a nested element. + + + + The BindableProperty on which to assign a value. + The value to set. + Sets the value of the specified property. + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + The BindablePropertyKey on which to assign a value. + The value to set. + Sets the value of the propertyKey. + + This method and are useful to implement BindableProperties with limited write access. The write access is limited to the scope of the BindablePropertyKey. + The following example shows how to declare a BindableProperty with "internal" write access. + + (w => w.My, default(string)); + public static readonly BindableProperty MyProperty = MyPropertyKey.BindableProperty; + + public string My { + get { return (string)GetValue (MyProperty); } + internal set { SetValue (MyPropertyKey, value); } + } +} + ]]> + + + + + Unapply all the bindings. + + This method removes all current bindings from the current context. + Changing a bound property requires that the binding count for a bound property must be 0. The method merely decrements the cound, and does not remove all bindings everywhere. + + + + Contains convenience extension methods for . + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + The for the binding. This parameter is optional. Default is . + An for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The source type. + The BindableObject. + The BindableProperty to bind to + An expression used to retrieve the source path. + The BindingMode for the binding. This parameter is optional. Default is . + An IValueConverter for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding from an expression. + + This extension method uses Expression instead of path to creates and sets bindings. Using Expressions is more refactoring friendly. + This following example illustrates the setting of a binding using the extension method. + + (Label.TextProperty, vm => vm.Name); +label.BindingContext = new PersonViewModel { + Name = "John Doe", + Company = "Xamarin" +}; +Debug.WriteLine (label.Text); //prints "John Doe" + ]]> + + + + + A BindableProperty is a backing store for properties allowing bindings on . + + The following example shows the creation of a BindableProperty as a backing store for a property. It shows also how to bind to that BindableProperty. + + (w => w.Foo, default(string)); + + public string Foo { + get { return (string)GetValue (FooProperty); } + set { SetValue (FooProperty, value); } + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MockBindable.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (bindable.Foo); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + To be added. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the type declaring the BindableProperty + + Unused + + + Gets the default BindingMode. + + + + + Gets the default value for the BindableProperty. + + + + + Gets the Func used as default value creator. + + + + + Gets a value indicating if the BindableProperty is created form a BindablePropertyKey. + + + + + Gets the property name. + + + + + Gets the type of the BindableProperty. + + + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + Strongly typed delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + The secret key to a BindableProperty, used to implement a BindableProperty with restricted write access. + + The following example shows the creation of a BindablePropertyKey. Write access is while read access is . + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the BindableProperty. + A BindableProperty used for read access. + + + + A single 1:1 immutable data binding. + This class is immutable. + + + Constructs and initializes a new instance of the class. + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + An object used as the source for this binding. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + Gets or sets the converter to be used for this binding ? + An IValueConverter, or . + + + + Gets or sets the parameter passed as argument to the converter. + An object, or . + + + + The type of the source of the binding. + An expression used to retrieve the binding path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + This is a convenient factory method to create a binding from an expression, instead of a property name. This api is more resilient to refactoring. + A newly created binding. + + The following example shows how to set a binding to a property : + + (vm => vm.Name)); +Debug.WriteLine (label.Text); //prints "John Doe". + ]]> + + + + + Gets or sets the path of the property + A string indicating the path to the property. + + + + Gets or sets the source of the binding. + An object used as the binding source. + If the Source is not null, the BindingContext is ignored, and the Source is used instead. This allows to set a source for a single Binding, and not for all the Bindings applied to the BindableObject. + + + An abstract class that provides a and a formatting option. + To be added. + + + To be added. + Stops synchronization on the . + To be added. + + + To be added. + To be added. + To be added. + Starts synchronization on the by using and . + To be added. + + + Gets or sets the mode for this binding. + To be added. + To be added. + + + Gets or sets the string format for this binding. + + A string specifying the format for the value of this binding. + + + + Used for providing a display format for the binding value or compositing the value with other + text. Implementors of decide how the string format is utilized, but + all support standard conventions. + + + allows for one argument for its singular value. + + + + A simple example showing compositing text and determining the display format for the value with a + + + + + + + + Throws an if the binding has been applied. + + Use this method in property setters as bindings can not be changed once applied. + + + + Class that represents a value comparison with the target of an arbitrary binding. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets the binding against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Used by XAML infrastructure. + To be added. + To be added. + + + The direction of changes propagation for bindings. + + The following examples shows some BindingMode use cases. + + (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 (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 (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" + ]]> + + + + + When used in Bindings, indicates that the Binding should use the . When used in BindableProperty declaration, defaults to BindingMode.OneWay. + + + 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. + + + 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. + + + Indicates that the binding should propagates changes from source (usually the View Model) to target (the BindableObject) in both directions. + + + Type converter that converts from source types to + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert to . + To be added. + To be added. + + + To be added. + To be added. + Converts to by using . + To be added. + To be added. + + + A bounds layout constraint used by s. + To be added. + + + To be added. + To be added. + Returns a object that contains the compiled version of and is relative to either or the views referred to in . + To be added. + To be added. + + + A that converts strings into s for use with s. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A used to draw a solid colored rectangle. + + BoxView is a useful stand-in for images or custom elements when doing initial prototyping. BoxView has a default size request of 40x40. If you need a different size, assign the and properties. + The class has the following XAML properties: + PropertyValueColorA color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + The example below creates a red with the default width and height. + ]]> + + The following example shows a basic use: + + + + + + + + + + Initializes a new instance of the BoxView class. + + + + Gets or sets the color which will fill the rectangle. This is a bindable property. + The color that is used to fill the rectangle. The default is . + + + + Identifies the Color bindable property. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + + + A button that reacts to touch events. + + + The following example shows a basic use: + + + + + + + + + Initializes a new instance of the Button class. + + + + Gets or sets a color that describes the border stroke color of the button. This is a bindable property. + The color that is used as the border stroke color; the default is . + This property has no effect if is set to 0. On Android this property will not have an effect unless is set to a non-default color. + + + Backing store for the BorderColor bindable property. + + + + Gets or sets the corner radius of the border. This is a bindable property. + The corner radius of the button border; the default is 5. + + + + Backing store for the BorderRadius bindable property. + + + + Gets or sets the width of the border. This is a bindable property. + The width of the button border; the default is 0. + Set this value to a non-zero value in order to have a visible border. + + + Backing store for the BorderWidth bindable property. + + + + Occurs when the Button is clicked. + The user may be able to raise the clicked event using accessibility or keyboard controls when the Button has focus. + + + Gets or sets the command to invoke when the button is activated. This is a bindable property. + A command to invoke when the butto is activated. The default value is . + This property is used to associate a command with an instance of a button. This property is most often set in the MVVM pattern to bind callbacks back into the ViewModel. is controlled by the Command if set. + + + Gets or sets the parameter to pass to the Command property. This is a bindable property. + A object to pass to the command property. The default value is . + + + + Backing store for the CommandParameter bindable property. + + + + Backing store for the Command bindable property. + + + + Gets or sets the Font for the Label text. This is a bindable property. + The value for the button. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the button text is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the button text belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets or sets the size of the font of the button text. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the optional image source to display next to the text in the Button. This is a bindable property. + To be added. + To be added. + + + Backing store for the Image bindable property. + + + + Overriden + + + + The name of the changed property. + Call this method from a child class to notify that a change happened on a property. + A Button triggers this by itself. An inheritor only need to call this for properties without BindableProperty as backend store. + + + Gets or sets the Text displayed as the content of the button. This is a bindable property. + The text displayed in the button. The default value is . + Changing the Text of a button will trigger a layout cycle. + + + Gets or sets the for the text of the button. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Sends a click event. + To be added. + + + A Page that users can swipe from side to side to display pages of content, like a gallery. + + The provides a navigation experience that will feel natural and familiar to Windows Phone users. By using , application developers can provide customized navigation on a per-platform basis. For example, an application developer could use a for Android and iOS, and use a on Windows Phone. + + The following XAML example, when properly included and referenced in a Xamarin.Forms project, creates a that displays three simple elements: + + + + + + + + + + + + + + + +]]> + + + The following C# example creates a that displays three simple elements: + pages = new List (0); +Color[] colors = { Color.Red, Color.Green, Color.Blue }; +foreach (Color c in colors) { + pages.Add (new ContentPage { Content = new StackLayout { + Children = { + new Label { Text = c.ToString () }, + new BoxView { + Color = c, + VerticalOptions = LayoutOptions.FillAndExpand + } + } + } + }); +} + +MainPage = new CarouselPage { + Children = { pages [0], + pages [1], + pages [2] } +}; +]]> + + When embedding a CarouselPage into a , application developers should set to to prevent gesture conflicts between the CarouselPage and MasterDetailPage. + + + + + + + Initializes a new instance of the CarouselPage class. + + + + The object representing the model ofr the page. + Creates a default page, suitable for display in this, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Provides base class and capabilities for all Forms cells. Cells are elements meant to be added to or . + + The subtypes of are: + + + Type + Description + + + EntryCell + A with a label and a single line text entry field. + + + SwitchCell + A with a label and an on/off switch. + + + TextCell + A with primary and secondary text. + + + ImageCell + A that also includes an image. + + + ViewCell + A containing a developer-defined . + + + The various subclasses are shown in the following image: + + + + + + + The class has the following XAML properties: + + + Property + Value + + + ContextActions + + A list of objects to display when the user performs the context action. + + + + IsEnabled + + + or , indicating whether the animation for is displayed. + + + + + + + Initializes a new instance of the Cell class. + Cell class is abstract, this constructor is never invoked directly. + + + Occurs when the visual representation of the Cell is being added to the visual layout. + This method is raised before the cell is on screen. + + + Gets a list of menu items to display when the user performs the device-specific context gesture on the Cell. + The list of menu items that will be displayed when the user performs the device-specific context gesture on the Cell. + The context gesture on the iOS platform is a left swipe. For Android and Windows Phone operating systems, the context gesture is a press and hold. + + + Occurs when the visual representation of the Cell is being removed from the visual layout. + This method is for virtualization usage only. It is not gauranteed to fire for all visible Cells when the ListView or TableView is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Gets a value that indicates whether the cell has at least one menu item in its list property. + To be added. + To be added. + + + Gets or sets the height of the Cell. + A double that represents the height of the cell. + The property is ignored if the app developer sets the or property on the surrounding to . In that case, the or property is used instead. + + + Gets or sets the IsEnabled state of the Cell. This is a bindable property. + A bool. Default is . + + + + Identifies the IsEnabled bindable property. + + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Event that is raised when the binding context is changed. + To be added. + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Invoked whenever a long press is applied to the Cell. + + + + Invoked whenever the Cell is Tapped. + + + + Gets the height of the rendered cell on the device. + + + + + Occurs when the Cell is Tapped. + + + + To be added. + To be added. + To be added. + To be added. + Delegate for callback in . + To be added. + + + Class that represents a color and exposes it as RGBA and HSL values. + + This type is immutable. Colors can be expressed in the RGB or HSL modes. While the constructor takes R, G, B, and A values, the class also calculates and makes available HSL data for the color. + + In XAML, application developers can specify any property that is of type , for example, either as a XAML attribute or as a nested tag. The following code example shows how to specify the text color for a label by using an attribute: + + Hello, World! +]]> + The example below shows how to specify the text color for a label by using a nested tag: + + Hello, World! + Color.Blue +]]> + + Application developers can specify colors in XAML either as a hexadecimal number or as a valid color name. + When specifying a color with a hexadecimal number, app developers can use 3, 4, or 6 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". Finally, if the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". + When specifying a color with a string, app developers can use color name in isolation, or prefix it with "Color.". For example, both Purple and Color.Purple are valid ways to specify the color purple. The following table describes the valid color names that can be used to specify colors in XAML. +ColorShort NameRGB ValueColor.TransparentTransparent0, 0, 0 (With the alpha channel set to 0.)Color.AquaAqua0, 255, 255Color.BlackBlack0, 0, 0Color.BlueBlue0, 0, 255Color.FuchsiaFuchsia255, 0, 255Color.GrayGray128, 128, 128Color.GreenGreen0, 128, 0Color.LimeLime0, 255, 0Color.MaroonMaroon128, 0, 0Color.NavyNavy0, 0, 128Color.OliveOlive128, 128, 0Color.PurplePurple128, 0, 128Color.PinkPink255, 102, 255Color.RedRed255, 0, 0Color.SilverSilver192, 192, 192Color.TealTeal0, 128, 128Color.WhiteWhite255, 255, 255Color.YellowYellow255, 255, 0 + + + + The luminosity of the gray-scale color. + Initialize a new gray color. + This is equivalent to new Color (value, value, value). The value is clamped to [0-1]. App developers should use the equivalent methods, instead. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Initializes a new RGB color. + This is equivalent to new Color (r, g, b, 1). Values are clamped to [0-1]. Prefer the equivalent methods. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Initializes a new RGB color with an alpha channel. + Values are clamped to [0-1]. + + + Gets the alpha component of the color. + The Alpha component of the color as a double that is in the inclusive range [0-1]. + + + + Gets the accent or tint color from the application. + A Color. + The accent color is platform and device dependent. + + + The delta (positive or negative) to add to the luminosity channel. + Returns a new Color with a modified luminosity channel. + A new color with a possibly modified luminosity channel. + The parameter is added to the current luminosity, and the resulting luminosity is then clamped to the inclusive range [0,1]. + + + Aqua, the color that is represented by the RGB value #00ffff. + + + + Gets the blue component of the color. + The Blue component of the color as a double that is in the inclusive range [0-1]. + + + + Black, the color that is represented by the RGB value #000000. + + + + Blue, the color that is represented by the RGB value #0000ff. + + + + Returns the default color. + The default color. + The Default color is used to unset any Color, and revert to the default one. + + + The value to compare to this structure. + Determine if the provided is equivalent to the current Color. + + if the provided object is an equivalent Color. Otherwies, . + Overriden. + + + A string that contains the hexadecimal (A)RGB color representation. + Returns a new RGB Color instance with the requested Red, Green, and Blue channels. The Alpha channel is set if contains one. + A color. + + When specifying a color with a hexadecimal number, app developers can use 3, 4, 6, or 8 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". If the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". Finally, the developer can explicitly provide an 8-digit number that completely specifies the Alpha, Red, Green, and Blue channels, in that order. + Note that, in the paragraph above, the fully expanded color description is of the format, AARRGGBB. That is: the first pair of hexadecimal digits specifies the Alpha channel; the second pair specifies the Red channel; the third pair specifies the Green channel; and the final pair specifies the Blue channel. + + + + The Hue component of the color. + The Saturation component of the color. + The Luminosity component of the color. + The alpha value of the color. + Returns a new HSL Color with an alpha channel + An HSL color + + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + An RGB color + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + A new RGB color. + Component values are clamped to [0,255]. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b, a), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,255]. + + + A uint that represents the ARGB value of the color. + Returns a new Color with the requested RGBA value. + An RGBA color. + + The parameter must represent an unsigned integer that can be represented by hexadecimal string that matches the format "AARRGGBB". + + + + Fucshia, the color that is represented by the RGB value #ff00ff. + + + + Fucshia, the color that is represented by the RGB value #ff00ff. Deprecated. See Remarks. + Use the color, instead. + + + Gets the Green component of the color. + The Green component of the color as a double that is in the inclusive range [0-1]. + + + + Returns the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gray, the color that is represented by the RGB value #808080. + + + + Green, the color that is represented by the RGB value #008000. + + + + Gets the Hue of the color. + The Hue component of the color as a double that is in the inclusive range [0-1]. + + + + Lime, the color that is represented by the RGB value #00ff00. + + + + Gets the Luminosity fo the color. + The Luminosity component of the color as a double that is in the inclusive range [0-1]. + + + + Maroon, the color that is represented by the RGB value #800000. + + + + The alpha multiplicator. + Returns a new color with the alpha channel multiplied by alpha, clamped to the inclusive range [0-1]. + A new RGBA color with a possibly new value for its alpha channel. See Remarks. + The resulting color has its alpha channel clamped toto the inclusive range [0-1], preventing invalid colors. + + + Navy, the color that is represented by the RGB value #000080. + + + + Olive, the color that is represented by the RGB value #808000. + + + + To be added. + To be added. + Returns if represents the same color as . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same color as . + To be added. + To be added. + + + Pink, the color that is represented by the RGB value #ff66ff. + + + + Purple, the color that is represented by the RGB value #800080. + + + + Gets the Red component of the color. + The Red component of the color as a double that is in the inclusive range [0-1]. + + + + Red, the color that is represented by the RGB value #ff0000. + + + + Gets the Saturation of the color + The Saturation component of the color as a double that is in the inclusive range [0-1]. + + + + Silver, the color that is represented by the RGB value #c0c0c0. + + + + Teal, the color that is represented by the RGB value #008080. + + + + Returns a string representation of the Color. + A string. + Overriden. + + + The transparent color, represented by the RGB value #00000000. + The Alpha channel of the color is set to 0. + + + White, the color that is represented by the RGB value #ffffff. + + + + The modified Hue. + Returns a color with modified Hue, but keeping the same Saturation and Luminosity. + A color. + The Hue is clamped to the inclusive range [0,1]. This method is useful for creating color palettes. + + + The modified luminosity. + Returns a color with modified Luminosity. + A new HSL color. + The new Luminosity is clamped to [0,1]. This method is useful for creating color palettes. + + + The modified Saturation. + Returns a new color with modified Saturation. + A new HSLcolor. + The Saturation is clamped to [0,1]. This method is useful for creating color palettes. + + + Yellow, the color that is represented by the RGB value #ffff00.. + + + + A that converts from strings to a . + + The following example shows some variations of : + + + + + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + An that defines properties for a column in a . + + The class has the following XAML property: + + + Property + Value + + + Width + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute width. + + + + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Event that is raised when the size of the column is changed. + To be added. + + + Gets or sets the width of the column. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A for s. + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + + +]]> + + + + + Creates a new empty collection. + To be added. + + + Defines an implementation wrapping an . + + + The following example creates a new Command and set it to a button. + + + Debug.WriteLine ("Command executed")); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, +}; +]]> + + + More useful scenarios takes a parameter + + + Debug.WriteLine ("Command executed: {0}", o)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action<object> to execute when the Command is executed. + Initializes a new instance of the Command class. + The Action will be executed with a parameter. + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An Action<object> to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An used as parameter to determine if the Command can be executed. + Returns a indicating if the Command can be exectued with the given parameter. + + if the Command can be executed, otherwise. + + If no canExecute parameter was passed to the Command constructor, this method always returns . + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + Occurs when the target of the Command should reevaluate whether or not the Command can be executed. + + + + Send a + + + + An used as parameter for the execute Action. + Invokes the execute Action + + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + The Type of the parameter, + Defines an implementation wrapping a generic Action<T>. + + + The following example creates a new Command and set it to a button. + + + (s => Debug.WriteLine ("Command executed: {0}", s)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + + + + Base class for conditions. + To be added. + + + A layout constraint used by s. + To be added. + + + To be added. + Returns a object that constrains an element to . + To be added. + To be added. + + + To be added. + Returns a that is calculated from . + To be added. + To be added. + + + To be added. + Returns a object that constrains an element relative to its parent's size. + To be added. + To be added. + + + To be added. + To be added. + Returns a object that constrains an element relative to the parameter. + To be added. + To be added. + + + Defines a constraint relationship. + + The class has the following XAML properties: + + + Property + Value + + + Constant + + An optionally signed integer literal. + + + + ElementName + + The name of a source element against which to calculate the constraint. + + + + Factor + + A decimal literal in the range (0,1]. + + + + Property + + The name of the property on the source element to use in the constraint calculation. + + + + Type + + + Constant, RelativeToParent, or RelativeToView. + + + + + + + Creates a new with default values. + To be added. + + + Gets or sets the constant constraint value.. + To be added. + To be added. + + + Gets or sets the name of a source element against which to calculate the constraint. + To be added. + To be added. + + + Gets or sets the factor by which to scale a constrained dimension, relative to the source element. + To be added. + To be added. + + + Gets or sets name of the property on the source element to use in the constraint calculation. + To be added. + To be added. + + + To be added. + Returns a for this . + To be added. + To be added. + + + Gets or sets the constraint type. + To be added. + To be added. + + + Enumeration specifying whether a constraint is constant, relative to a view, or relative to its parent. + To be added. + + + A constant constraint. + + + A constraint that is relative to a parent element. + + + A constraint that is relative to a view. + + + A that converts from strings to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that displays a single view. + + This is a Page displaying a single View, often a container like a or . + + The example below is taken from he App.cs file that is contained in the default "Hello, Forms!" app. It uses a to display a label, which is a typical, though basic, use of the class. + + The FormsGallery sample, which can be found on the Sample Applications page, has a ContentPageDemoPage.cs file. This file contains a longer and more complicated example. + The class has the following XAML property: + + + + Property + Value + + + Content + + A list of objects that represent the visual content of the . This tag can be omitted, and the contents listed directly. + + + A ContentPage tag can be the root element of a XAML document. + + + + + + Initializes a new ContentPage instance. + + + + Gets or Sets the View element representing the content of the Page. + A subclass, or . + + + + Indicates the property of the type that is the (default) content property. + + XAML processor uses to determine the content property. + +Decorating types with ContentPropertyAttribute allows shorter XAML syntax. As + + has a ContentProperty attribute applied, this XAML is valid: + + +This is equivalent to the following, more explicit XAML + + + + + ]]> + + + + The name of the property. + Initializes a new instance of the ContentPropertyAttribute class. + + + + Gets the name of the content property + A string representing the name of the content property. + + + + An element that contains a single child element. + + The class has the following XAML property: + + + Property + Value + + + Content + + The object that represents the visual content of the . + + + + + The following example shows how to construct a new ContentView with a Label inside. + + + + + + + + + + + Initializes a new instance fo the ContentView class. + + + + Gets or sets the content of the ContentView. + A used as content. + + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + Positions and sizes the content of a ContentView. + + + + The available width for the ContentView to use + The available height for the ContentView to use. + This method is called during the measure pass of a layout cycle to get the desired size of the ContentView. + A which contains the desired size of the StackLayout. + The results of this method will be the desired size of its content. + + + A template for multiple bindings, commonly used by s, s, and s. + In XAML, application developers can nest markup inside a DataTemplate tag to create a whose members are bound to the properties of data objects that are contained in a list. + + + A custom content generator to be called + Creates and initializes a new instance of the class. + To be added. + + + To be added. + Creates a new for type . + To be added. + + + Gets a dictionary of bindings, indexed by the bound properties. + To be added. + To be added. + + + Loads the template for the type that is represented by this and sets all of the bindings and values. + To be added. + To be added. + + + To be added. + To be added. + Sets the binding for . + To be added. + + + To be added. + To be added. + Sets the value of . + To be added. + + + Returns a dictionary of property values for this , indexed by property. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + Gets or sets the parent element of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + + + + + + + + + Class that represents a binding condition and a list of objects that will be applied when the condition is met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Value + + The value of the property that will trigger the setters in Setters. + + + + Setters + + A list of setters that are called when the property condition is met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the binding whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the binding that is named by the property becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the binding, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + XAML infrastructure. + To be added. + To be added. + + + Event arguments for event. + To be added. + + + To be added. + To be added. + Creates a new object that represents a change from to . + To be added. + + + The date that the user entered. + To be added. + To be added. + + + The date that was on the element at the time that the user selected it. + To be added. + To be added. + + + A that allows date picking. + + The visual representation of a DatePicker is very similar to the one of , except that a special control for picking a date appears in place of a keyboard. + + + + The following example shows a basic use: + + + + The class has the following XAML properties: + + + Property + Value + + + Format + + A string that specifies the display format in the control of the chosen date. + + + + Date + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MinimumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MaximumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + + The example below creates a working that displays the current date and allows the user to select a date between the specified ranges. The value for the property is specified with the x:Static markup extension, and the and properties are specified by calling the method with the x:FactoryMethod and x:Arguments tags. The example below requires a namespace declaration in the root ContentPage or ContentView tags. In particular, xmlns:sys="clr-namespace:System;assembly=mscorlib" must appear in the attribute list for the root element, so that the XAML parser can resolve the name, sys:DateTime. + + + yyyy-MM-dd + + + + Jan 1 2000 + + + + + + + Dec 31 2050 + + + + + ]]> + + + + + Initializes a new instance of the DatePicker class. + + + + Gets or sets the displayed date. This is a bindable property. + The displayed in the DatePicker. + + + + Identifies the Date bindable property. + + + + An event fired when the Date property changes. + + + + The format of the date to display to the user. This is a dependency property. + A valid date format. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format dependency property. + + + + The highest date selectable for this DatePicker. This is a bindable property. + The maximum selectable for the DateEntry. Default December 31, 2100. + + + + Identifies the MaximumDate bindable property. + + + + The lowest date selectable for this DatePicker. This is a bindable property. + The minimum selectable for the DateEntry. Default January 1, 1900. + + + + Identifies the MinimumDate bindable property. + + + + To be added. + A collection parameterized by an . Base class for and . + + Objects of type are parameterized with a type of . + + + + + + + The to add. + Adds a to the collection. + To be added. + + + Removes all values from this . + To be added. + + + The to check for in this . + Returns a Boolean value that indicates whether or not this contains the specified . + To be added. + To be added. + + + To be added. + To be added. + Copies instances from this to an array, starting at the specified index. + To be added. + + + Gets the number of instances contained in this . + To be added. + To be added. + + + Returns an enumerator that iterates through the instances in this . + To be added. + To be added. + + + The instance to find. + Returns the index of the first occurrence of in this . + To be added. + To be added. + + + The position at which to insert . + The to insert. + Inserts a into this at the location that is specified by . + To be added. + + + + . instances can have items added to them and removed from them. + + + + To be added. + + + The location of the item to get or set. + Gets or sets the value indexed by . + To be added. + To be added. + + + Event that is raised when the display size of item in the collection changes. + To be added. + + + The to remove from this . + Removes a from this and returns if the item was removed. + + if was in this and was therefore removed. if was not in this . + To be added. + + + The location in this from which to remove an instance. + Removes an item from this . + To be added. + + + Gets an enumerator that can be used to iterate over the instances in this . + To be added. + To be added. + + + An attribute that indicates that the specified type provides a concrete implementation of a needed interface. + To be added. + + + To be added. + Creates a new with default values. + To be added. + + + Enumeration specifying whether should return a reference to a global or new instance. + + The following example shows how can be used to specify a new instance: + + (DependencyFetchTarget.NewInstance); + ]]> + + + + + Return a global instance. + + + Return a new instance. + + + Static class that provides the factory method for retrieving platform-specific implementations of the specified type T. + To be added. + + + To be added. + To be added. + Returns the platform-specific implementation of type T. + To be added. + To be added. + + + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + To be added. + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + An utility class to interract with the current Device/Platform. + + + + The Action to invoke + Invokes an Action on the device main (UI) thread. + + This example show how to set the Text of Label on the main thread, e.g. in response to an async event. + + + { + label.Text = "Async operation completed"; +}); + ]]> + + + + + To be added. + To be added. + Returns a double that represents the named size for the font that is used on the element on the native platform. + To be added. + To be added. + + + To be added. + To be added. + Returns a double that represents a font size that corresponds to on . + To be added. + To be added. + + + Gets the kind of device Forms is currently working on. + A representing the device type. + + + + (optional) The Action to execute on iOS. + (optional) The Action to execute on Android. + (optional) The Action to execute on WinPhone. + (optional) The Action to execute if no Action was provided for the current OS. + Executes different Actions depending on the Forms is working on. + + This example show how to change the font of a Label on a single OS. + + + label.Font = Font.OfSize ("HelveticaNeue-UltraLight", NamedSize.Large)); + ]]> + + + + + The type of the value to be returned. + The value for iOS. + The value for Android. + The value for WinPhone. + Returns different values depending on the Forms is working on. + The value for the current OS. + + This example show how to use different heights for a Button on different OS. + + + + + + + + The to open. + Request the device to open the Uri. + This often navigates out of the application. + + + Gets the indicating the OS Forms is working on. + A indicating the current OS. + + + + The interval between invocations of the callback. + The action to run when the timer elapses. + Starts a recurring timer using the device clock capabilities. + While the callback returns the timer will keep recurring. + + + Class that exposes device-specific styles as static fields. + To be added. + + + The device-specific body style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific caption style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for detail text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific subtitle style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific title style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + Functions that modify values non-linearly, generally used for animations. + + Easing functions are applied to input values in the range [0,1]. The cubic easing functions are often considered to look most natural. + If developers wish to use their own easing functions, they should return a value of 0 for an input of 0 and a value of 1 for an input of 1 or the animation will have a jump. + The predefined functions have the following forms: + + + Member + Graph + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To be added. + Creates a new object with the function. + To be added. + + + Jumps towards, and then bounces as it settles at the final value. (Note: Known bug in 1.0.0 release) + + NOTE: The 1.0.0. release of has a known bug and runs backwards. The following graph shows the desired behavior, shortly to be released: + + + + + + + Leaps to final values, bounces 3 times, and settles. + + + + + + + + Starts slowly and accelerates. + + + + + + + + Accelerates and decelerates. Often a natural-looking choice. + + + + + + + + Starts quickly and the decelerates. + + + + + + + + A value in the range [0,1] to which the easing function should be applied. + Applies the easing function to the specified value . + The value of the easing function when applied to the value . + To be added. + + + Linear transformation. + + + + + + + + An easing function. + Converts a function into an . + An for the . + + An easing function should return a value of (or near) 0 at 0 and 1 (or near) for 1. + + + + Smoothly accelerates. + + + + + + + + Accelerates in and out. + + + + . + + + Smoothly decelerates. + + + + + + + + Moves away and then leaps toward the final value. + + + + + + + + Overshoots and then returns. + + + + + + + + A control that can edit multiple lines of text. + + For single line entries, see . + + + + + + + Initializes a new instance of the Editor class. + + + The following example creates a Editor with a Chat keyboard that fills the available space. + + + + + The class has the following XAML propertY: + + + Property + Value + + + Text + + The initial text that will appear in the editor. + + + + + + + Event that is fired when editing has completed. + iOS (Unfocusing the editor or pressing "Done" triggers the event). Android / Windows Phone (Unfocusing the Editor triggers the event) + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is null. + Setting this property will cause the event to be emitted. + + + Occurs when the text of the Editor changes. + + + + Identifies the Test bindable property. + + + + Provides the base class for all Forms hierarchal elements. This class contains all the methods and properties required to represent an element in the Forms hierarchy. + + The following diagram shows the classes derived from . + + + + The diagram shows some important categories: + + + Class + Description + + + + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + + + + + Cells are elements meant to be added to or . + + + + + + A that occupies most or all of the screen and contains a single child. + + + + + + + have a single child of type , while subclasses of have a collection of multiple children views, including other layouts. + + + + Controls and specialized s + + The lower part of the diagram shows the Xamarin.Forms classes for universally-available controls, such as s and s. + + + + + + Protected constructor used to initialize a the element. + To be added. + + + Occurs whenever a child element is added to the element. + To be added. + + + Occurs whenever a child element is removed from the element. + To be added. + + + Gets or sets a value used to identify a collection of semantically similar elements. + A string that represents the collection the element belongs to. + Use the class id property to collect together elements into semantically similar groups for identification in ui testing and in theme engines. + + + Identifies the ClassId bindable property. + To be added. + + + Occurs whenever a child element is added to the elements subtree. + To be added. + + + Occurs whenever a child element is removed from the elements subtree. + To be added. + + + Gets a value that can be used to uniquely identify an element through the run of an application. + A Guid uniquely identifying the element. + This value is generated at runtime and is not stable across runs of your app. + + + Invoked whenever the binding context of the element changes. Implement this method to add class handling for this event. + Implementors must call the base method. + + + The element that was added. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + The element that was removed. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + Implementors must call the base method. + + + Gets or sets the parent element of the element. + The element which should be the parent of this element. + Most application authors will not need to set the parent element by hand. + + + Gets the element which is the closest ancestor of this element that is a . + The closest ansestor which is a . + Convenient way of accessing the nearest ancestor of an element which is actually represented on screen visually. If this element is a visual element, its bounds are relative to its ParentView. + + + The BindableProperty from which to remove the DynamicResource. + Removes a previously set dynamic resource + + + + The BindableProperty. + The key of the DynamicResource + Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key. + + + + Gets or sets a user defined value to uniquely identify the element. + A string uniquely identifying the element. + Use the StyleId property to identify individual elements in your application for identification in ui testing and in theme engines. + + + To be added. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + The identifier of the being sought. + Finds an object previously registered with . + The Object previously associated with by a call to . Raises a if this is not in an . + To be added. + + + To be added. + To be added. + Internal use only. + To be added. + + + Identifier to be used with the . + Object to be associated with the . + Within an , creates an association between and . + To be added. + + + The identifier to be removed. + Removes from an . + To be added. + + + Provides data for events pertaining to a single . + + + + + + + + The element relevant to the event. + Constructs and initializes a new instance of the class. + + + + Gets the element relevant to the event. + The element relevant to the event. + + + + A control that can edit a single line of text. + + Entry is a single line text entry. It is best used for collecting small discrete pieces of information, like usernames and passwords. + + + The following example creates a new username and password set of entries. + + + The FormsGallery sample, which can be found on the Sample Applications page, has an EntryDemoPage.cs file. This file contains a longer and more complicated example. + + The class has the following XAML properties: + + + Property + Value + + + IsPassword + + true to indicate that the is a password field. Otherwise, false. + + + Placeholder + The default text that will appear in the control. + + + Text + + The initial text that will appear in the entry. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + + + + Initializes a new instance of the Entry class. + + + + Occurs when the user finalizes the text in an entry with the return key. + This finilaization will usually but not always be accompanied by IsFocused being set to false. + + + Gets or sets a value that indicates if the entry should visually obscure typed text. This is a bindable property. + + if the element is a password box; otherwise, . Default value is . + Toggling this value does not reset the contents of the entry, therefore it is advisable to be careful about setting IsPassword to false, as it may contain sensitive information. + + + Identifies the IsPassword bindable property. + + + + Gets or sets the placeholder text shown when the entry is null or empty. This is a bindable property. + The placeholder text shown when is null or empty. The default value is . + + + + Identifies the Placeholder bindable property. + + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is . + Setting this property will cause the event to be emitted. + + + Event that is raised when the text in this element is changed. + To be added. + + + Gets or sets the for the text of the Entry. This is a bindable property. + The of the text. + + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + A with a label and a single line text entry field. + + The following example shows a basic use. + + + + The class has the following XAML properties: + + + Property + Value + + + Keyboard + A property name that indicates which keyboard to present to the user when editing text. + + + Label + + The text that is presented next to the entry area in the . + + + + LabelColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + The default text that will appear in the control when it is empty. + + + Text + + The initial text that will appear in the editor. + + + + XAlign + + + Center, End, or Start, to indicate the placement of the text that is entered by the user. + + + + + + + + + + Initializes a new instance of the EntryCell class. + + + + Event fired when the user presses 'Done' on the EntryCell's keyboard + + + + Gets or sets the Keyboard to display while editing the EntryCell. This is a bindable property. + A representing the keyboard kind. Default is . + + + + Identifies the Keyboard bindable property. + + + + Gets or sets the fixed text presented next to the Entry in the EntryCell. This is a bindable property. + A . + + + + Gets or sets the Color used for rendering the Label property. This is a bindable property. + Default is Color.Default. + + + + Identifies the LabelColor bindable property. + + + + Identifies the Label bindable property. + + + + Gets or sets the placeholder text displayed in the Entry when the Text is null or empty. This is a bindable property. + + + + + Identifies the Placeholder bindable property, + + + + Gets or sets the content of the Entry of the EntryCell. This is a bindable property. + + + + + Identifies the Text bindable property. + + + + Gets or sets the horizontal alignement of the Text property. This is a bindable property. + Default is . + + + + Identifies the XAlign bindable property. + + + + Class that represents a triggering event and a list of objects that will be invoked when the event is raised. + + The class has the following XAML property: + + + Property + Value + + + Event + + The name of the event to which to respond. + + + + Object name + + The qualified name of a implementation that has been defined by the application developer. This object is instantiated and its method is called when the triggering event is raised. Attributes on this tag set corresponding proptery values on the implementation before the method is called. + + + + + + Creates a new instance. + + + + Gets the list of objects that will be invoked when the event that is identified by the property is raised. + + + + + Gets or sets the name of the event that will cause the actions that are contained in the to be invoked. + + + + + Internal. + + + + Internal. + + + + An that reads an image from a file. + To be added. + + + Creates a new object with default values. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. + Overriden for FileImageSource. FileImageSource are not cancellable, so this will always returns a completed Task with as Result. + + + Gets or sets the file from which this will load an image. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed. + To be added. + + + To be added. + Allows implicit casting from a string. + To be added. + To be added. + + + To be added. + Allows implicit casting to a string. + To be added. + To be added. + + + Event args for 's and events. + + + + The who's focused was changed. + Whether or not the was focused. + Constructs and initializes a new instance of the class. + + + + Gets whether or not the was focused. + + if the view was focused, otherwise. + + + + Gets the who's focused was changed. + The who's focused was changed. + + + + The font used to display text. + The available fonts, and the matching between and real displayed fonts is device-dependent. + + + The desired font size. + Returns a font instance that represents the default bold font, in the requested size, for the device. + The requested bold . + + + + The desired font . + Returns an usable font instance representing the default bold font, in the requested NamedSize, for the device. + The requested bold . + + + + Gets the default font for the device. + The default font for the device. + To be added. + + + The value to compare this font to. + Determine if the provided is equivalent to the current Font. + + if the provided object is an equivalent font. otherwise. + Overriden. + + + Gets a value that indicates whether the font is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which this font belongs. + The font family to which this structure belongs. + To be added. + + + Gets the size of the font. + A that indicates the size of the font. + To be added. + + + Get the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gets the named font size, such as "Large" or "Small". + To be added. + To be added. + + + The name of the targeted system font. + The desired font size. + Returns a structure with the requested font and size. + A instance. + Font availability is platform- and device-dependent. + + + The name of the targeted system font. + The desired font . + Returns an usable , with the requested font and NamedSize. + A Font instance. + Font availability is platform and device dependent. + + + To be added. + To be added. + Returns if represents the same font that represents. Otherwise, . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same font that represents. Otherwise, . + To be added. + To be added. + + + The desired font size. + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested . + + + + The desired font . + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested bold . + + + + The requested font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + The requested named font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + Returns a string representation of this font structure. + A string representation of this structure. + The method returns a string that contains a labeled, comma-separated list of the , , , and properties. + + + Gets a value that indicates whether the target operating system should use size that is specified by the property. + To be added. + To be added. + + + Whether the font is italic, bold, or neither. + Returns a new font structure with the specified attributes. + A new structure with the attributes that were specified with . + To be added. + + + The requested font size. + Returns a new font structure with the size that was specified with . + To be added. + To be added. + + + The requested named font size. + A new structure with the size that was specified with . + To be added. + To be added. + + + Enumerates values that describe font styles. + To be added. + + + The font is bold. + + + The font is italic. + + + The font is unmodified. + + + Converts a string into a font size. + To be added. + + + Initializes a new object. + To be added. + + + To be added. + Returns a value that indicates if the source type can be converted to a font size. + To be added. + To be added. + + + To be added. + To be added. + Converts an object into a font size. + To be added. + To be added. + + + A that converts from strings to . + String should be formatted as "[name],[attributes],[size]" there may be multiple attributes, e.g. "Georgia, Bold, Italic, 42" + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Represents a text with attributes applied to some parts. + + + + Initializes a new instance of the FormattedString class. + To be added. + + + To be added. + Cast the FormattedString to a string, stripping all the attributes. + To be added. + To be added. + + + To be added. + Cast a string to a FromattedString that contains a single span with no attribute set. + To be added. + To be added. + + + Event that is raised when a bound property is changed. + To be added. + + + Gets the collection of spans. + To be added. + To be added. + + + Returns the text of the formatted string as an unformatted string. + To be added. + To be added. + + + An element containing a single child, with some framing options. + + Frame have a default of 20. + + The following example shows how to construct a new Frame with an Outline color. + + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasShadow + + + true or false, to indicate whether to show a shadow effect where the platform supports it. + + + + OutlineColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + Initializes a new instance of the Frame class. + A Frame has a default of 20. + + + Gets or sets a flag indicating if the Frame has a shadow displayed. This is a bindable property. + A indicating whether or not the Frame has a shadow. Default is . + + + + Identifies the HasShadow bindable property. + + + + Gets or sets the color of the border of the Frame. This is a bindable property. + A representing the border Color. Default is . + + + + Identifies the OutlineColor bindable property. + + + + The base class for all gesture recognizers. + + + + The parent element of the gesture recognizer. + An element from which the binding context will be inherited. + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying the various states of a gesture. + To be added. + + + The gesture has begun and has not ended, failed, or been cancelled. + + + The gesture was cancelled. + + + The gesture has ended. + + + The gesture was not recognized. + + + The gesture is in progress and may still become recognizable.. + + + The gesture state is being updated. + + + A layout that arranges views in rows and columns. + + + The following example shows a basic use: + + + The following shows Grids on the various platforms: + + + + It is convenient for the layout class arranges to store row and column indices of each of its child elements. Additionally, when a element is laid out with a grid, application developers can access and change the child's position and span from the child itself by using the , , , , static methods, and the equivalent static methods for columns and column spans. + The class has the following XAML properties. + + + Property + Value + + + Children + + Nested visual elements that are displayed in the Grid. + + + + ColumnDefinitions + + A list of ColumnDefinition specifications. See . + + + + ColumnSpacing + An integer. + + + RowDefinitions + + A list of RowDefinition specifications. See . + + + + RowSpacing + + An integer. + + + + The class has the following XAML attached properties. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + ColumnSpan + An integer that represents the number of Columns that the item will span. + + + Row + + An integer that represents the row in which the item will appear. + + + + RowSpan + + An integer that represents the number of rows that the item will span. + + + + The documentation for the following member methods contains XAML syntax examples: + + + + + Initializes a new instance of the Grid class. + + + + Gets the collection of child elements of the Grid. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the Grid class. + + + + Provides the interface for the bound property that gets or sets the ordered collection of objects that control the layout of columns in the . + A ColumnDefinitionCollection for the Grid instance. + + ColumnDefinitions is an ordered set of ColumnDefinition objects that determine the width of each column. Each successive ColumnDefintion controls the width of each successive column. If ColumnDefinitions is empty, or if there are more columns than definitions, then columns for which there is no definition are rendered as if they were controlled by a ColumnDefinition object that has its property set to . + The property has XAML syntax support. The syntax for this operation is shown below. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the zero-based column index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Provides the interface for the bound property that gets or sets the distance between columns in the Grid. + The space between columns in this layout. + + The property does not control spacing on the left and right edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of columns that a child element spans. See Remarks. + + The interface for this property is defined by the and methods. + + + + An element that belongs to the Grid layout. + Gets the column of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Column attached property. + + + + An element that belongs to the Grid layout. + Gets the column span of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the number of Columns that the item will span. + + + + The remarks for the method contain syntax for and information about the ColumnSpan attached property. + + + + An element that belongs to the Grid layout. + Gets the row of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Row attached property. + + + + An element that belongs to the Grid layout. + Gets the row span of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached properties: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + The remarks for the method contain syntax for and information about the RowSpan attached property. + + + + Invalidates the grid layout. + To be added. + + + X-coordinate of the top left corner of the bounding rectangle. + Y-coordinate of the top left corner of the bounding rectangle. + Width of the bounding rectangle. + Height of the bounding rectangle. + + Lays out the child elements when the layout is invalidated. + + To be added. + + + The element that was added. + Method that is called when a child is added to this element. + + + + The element that was removed. + Method that is called when a child is removed from this element. + To be added. + + + The requested width. + The requested height. + Method that is called when an attempt is made to resize this element. + + The new requested size. + + To be added. + + + Provides the interface for the bound property that gets or sets the collection of RowDefinition objects that control the heights of each row. + A RowDefinitionCollection for the Grid instance. + + RowDefinitions is an ordered set of objects that determine the height of each column. Each successive RowDefintion controls the width of each successive column. If RowDefinitions is empty, or if there are more rows than definitions, then rows for which there is no definition are rendered as if they were controlled by a RowDefinition object that has its property set to . + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + To be added. + + + Implements the attached property that represents the zero-based row index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Gets or sets the amount of space left between rows in the Grid. This is a bindable property. + The space between rows + + The property does not control spacing on the top and bottom edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of rows that a child element spans, and allows the class to bind it to properties on other objects at run time. + + The interface for this property is defined by the and methods. + + + + A child element of this Grid to move to a different column. + The column in which to place the child element. + Changes the column in which a child element will be placed. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the Column in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new column span. + The new column span. + Changes the column span of the specified child element. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the number of Columns that the item will span. + + + + + + + A child element of this Grid to move to a different row. + The row in which to place the child element. + Changes the row in which a child element will be placed. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new row span. + The new row span. + Changes the row span of the specified child element. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + + + + The type of elements in the grid. + List interface with overloads for adding elements to a grid. + + + + The view to add. + The column to add the view to. + The row to add the view to. + Adds a view to the List at the specified location with a RowSpan and HeightSpan of 1. + + + + The view to add. + The left edge of the column span. Must be greater than 0. + The right edge of the column span. Must be greater than left. + The top edge of the row span. Must be greater than 0. + The bottom edge of the row span. Must be greater than top. + Adds a view to the List at the specified row and column spans. + + + + The views to add. + Add a collection views to the List such that they are horizontally stacked to the right of the current contents of the Grid. + The final span of each view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is horizontally stacked to the right of the current contents of the Grid. + The final span of the view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The views to add. + Add a collection views to the List such that they are vertically stacked below the current contents of the Grid. + The final span of each view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is vertically stacked below the current contents of the Grid. + The final span of the view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + Used to define the size (width/height) of Grid ColumnDefinition and RowDefinition. + + GridLength of type GridUnitType.Absolute represents exact size. The ones of type GridUnitType.Auto adapts for fitting the size of the elements in the gird column/row. GridLenght of type GridUnitType.Star are used to split the available size in proportional buckets. + This valuetype is readonly. + + + + To be added. + Initializes a new Absolute GridLength. + This is striclty equivalent to new GridLength (value, GridUnitType.Absolute). + + + The size of the GridLength. + The GridUnitType (Auto, Star, Absolute) of the GridLength. + Initializes a new GridLength. + + + + A ready to reuse GridLength of GridUnitType.Auto. + + Value has no meaning for GridLength ot type GridUnitType.Auto. + + + A GridLength to compare to. + Test the equality of this GridLength and another one. + true is the GridLength are equal. False otherwise. + + + + Returns a value that is used for efficient storage of this object in collections. + To be added. + overriden. + + + Gets or sets the GridUnitType of the GridLength + The GridUnitType of the GridLength + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Absolute. + true if the GridUnitType of the GridLength is GridUnitType.Absolute + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Auto. + true if the GridUnitType of the GridLength is GridUnitType.Auto + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Star. + true if the GridUnitType of the GridLength is GridUnitType.Star + + + + The absolute size + Casting operator to convert a double into a GridLength of type GridUnitType.Absolute + A GridLength of type GridUnitType.Absolute and of size absolutesize + + + + Gets the Value of the GridLength. + The value in GridUnitType of the GridLength. + + + + A that converts from strings to s. + + The following example shows some uses of : + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Enumerates values that control how the property is interpreted for row and column definitions. + To be added. + + + Interpret the property value as the number of device-specific units. + To be added. + + + Ignore the property value and choose a size that fits the children of the row or column. + To be added. + + + Interpret the property value as a proportional weight, to be laid out after rows and columns with or are accounted for. + After all the rows and columns of type and are laid out, each of the corresponding remaining rows or columns, which are of type , receive a fraction of the remaining available space. This fraction is determined by dividing each row's or column's property value by the sum of all the row or column property values, correspondingly, including its own. + + + An abstract attribute whose subclasses specify the platform-specific renderers for Xamarin.Forms abstract controls. + To be added. + + + To be added. + To be added. + Creates a new object that maps events from to . + To be added. + + + Returns a Boolean value that indicates whether the runtime should automatically register the handler for the target. + To be added. + To be added. + + + A WebViewSource bound to an HTML-formatted string. + To be added. + + + Creates a new empty object with default values. + To be added. + + + The base URL for the source HTML document. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + The HTML content. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Defines an interface for elements that can be animated. + To be added. + + + Implement this method to begin a batch of animations that have been committed. + To be added. + + + Implement this method to commit a batch of animations so that they can be run with the method. + To be added. + + + Interface defining the type of and . + + Objects of type are parameterized with a type of . + + + + + + + Event that is raised when the size of the row or column changes. + To be added. + + + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + Sets a bound property value from a renderer without breaking the binding. + To be added. + + + The base interface all gesture recognizers must implement. + This interface is currently empty, this will likely change. + + + Interface indicating layout behavior and exposing the event. + To be added. + + + Event that is raised when the layout changes. + To be added. + + + + that holds an image. + + + The following example creates a new image from a file + + + + + The FormsGallery sample, which can be found on the Sample Applications page, has a ImageDemoPage.cs file. This file contains a longer and more complicated example. + + + + Initializes a new instance of the Image class. + + + The following example creates a new image from a file + + + + + + + + Gets or sets the scaling mode for the image. This is a bindable property. + A representing the scaling mode of the image. Default is . + + + + Identifies the Aspect bindable property. + + + + Gets the loading status of the image. This is a bindable property. + A indicating if the image is loadin. Default is false. + + + The following example illustrates running a to indicate that the image is loading: + + + + + + + Identifies the IsLoading bindable property. + This bindable property is readonly. + + + Gets or sets the opacity flag for the image. This is a bindable property. + A indicating the value for the property. Default is false. + If true, you'll be able to see through transparent parts of the image. + + + Identifies the IsOpaque bindable property. + + + + Invoked when the BindingContext changes. + Overriden for Image. + + + The name of the property. + Invoked when a property has changed. + Overriden for Image. + + + The name of the property. + Invoked when a property will change. + Overriden for Image. + + + The available width. + The available height. + Invoked when the layotu cycle request the element desired size. + + Overriden for Image. + + + Gets or sets the source of the image. This is a bindable property. + An representing the image source. Default is null. + + + + Identifies the Source bindable property. + + + + A that has an image. + + + objects are used to place images and accompanying text into a table. + + The following example shows a basic use. + + + + + + + + + Initializes a new instance of the ImageCell class. + + + + Gets or sets the ImageSource from which the Image is loaded. This is a bindable property. + + + + + Identifies the ImageSource bindable property. + + + + Overriden.. + + + + Abstract class whose implementors load images from files or the Web. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. The result of the Task indicates if the Task was successfully cancelled. + Calling Cancel() multiple times will throw an exception. + + + Gets the CancellationTokenSource. + + Used by inheritors to implement cancellable loads. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A string representing the id of the EmbeddedResource to load. + Creates an ImageSource for an EmbeddedResource included in the Assembly from which the call to FromResource is made. + A newly created ImageSource. + + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A bool indicating if the source was cancelled. + Called by inheritors to indicate the end of the loading of the source. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate the beginning of a loading operation. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate that the source changed.. + To be added. + + + To be added. + Allows implicit casting from a string that represents an absolute URI. + To be added. + To be added. + + + To be added. + Allows implicit casting from objects that were created with an absolute URI. + To be added. + To be added. + + + Gets or sets the element to which this object belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Interface abstracting platform-specific navigation. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + The page to add. + The existing page, before which will be inserted. + Inserts a page in the navigation stack before an existing page in the stack. + To be added. + + + Gets the modal navigation stack. + To be added. + To be added. + + + Gets the stack of pages in the navigation. + To be added. + To be added. + + + Asynchronously removes the most recent from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the most recent from the navigation stack, with optional animation. + To be added. + To be added. + + + Asynchronously dismisses the most recent modally presented . + An awaitable Task<Page>, indicating the PopModalAsync completion. The Task.Result is the Page that has been popped. + + The following example shows PushModal and PopModal usage: + + + + + Application developers must the result of and . Calling may cause a deadlock if a previous call to or has not completed. + + + + + To be added. + Asynchronously dismisses the most recent modally presented , with optional animation. + To be added. + To be added. + + + Pops all but the root off the navigation stack. + A task representing the asynchronous dismiss operation. + To be added. + + + To be added. + Pops all but the root off the navigation stack, with optional animation. + To be added. + To be added. + + + The to be pushed on top of the navigation stack. + Asynchronously adds a to the top of the navigation stack. + A task representing the asynchronous dismiss operation. + + + The following example shows and usage: + + + + + + + + To be added. + To be added. + Asynchronously adds a to the top of the navigation stack, with optional animation. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + + The following example shows PushModalAsync and PopModalAsync usage: + + + + + + + To be added. + To be added. + Presents a modally, with optional animation. + To be added. + To be added. + + + To be added. + Removes the specified page from the navigation stack. + To be added. + + + The base class of a view which can take keyboard input. + The constructor of this class is internal. Forms does not provide any renderer for InputView base class. + + + Gets or sets the Keyboard for the InputView. This is a bindable property. + The to use for the InputView. + + + + Identifies the Keyboard bindable property. + + + + To be added. + Interface defining a container for s and exposing a property. + To be added. + + + Gets the current page. + To be added. + To be added. + + + Interface defining the abstraction of a native platform. + To be added. + + + The binding context for the native platform. + To be added. + To be added. + + + Event that is raised when the binding context changes. + To be added. + + + The platform engine, useful for getting the screen size and for finding out if the paltform supports 3D. + To be added. + To be added. + + + Gets the root page of the platform. + To be added. + To be added. + + + To be added. + Sets the root page of the platform. + To be added. + + + Interface defining a native platform rendering engine. + To be added. + + + To be added. + To be added. + To be added. + Performs a size request on the native platform. + To be added. + To be added. + + + Gets a Boolean value that indicates whether the native platform supports 3D graphics. + To be added. + To be added. + + + Internally-used flagging interface indicating types that can be registered with . + To be added. + + + The type of visual that the items will be templated into. + A base class for a view that contains a templated list of items. + + + This class is used as a base class for views that wish to take in a list of user objects and produce views for each of them to be displayed, such as . The generic + argument is used to specify the type of visual that the view expects. In the case of , only subclasses are accepted, so that's + what it provides as its argument. + + + + + The user object + Creates a default instance for . + An instance of the class. + + This method is called by the templating system when is . + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + Gets or sets the source of items to template and display. + To be added. + + While any implementer is accepted, any that do not implement or + (where T is a class) will be converted to list by iterating. + If your collection implements , any changes raised from the event on this interface will be reflected in the items view. Note that if the event + is raised on another thread the main thread, the results will be unpredictable depending on the platform. To safely modify your collection (and raise the event) from another thread, call + to enable proper synchronization of access to the thread. + + + + Identifies the property. + + + + Gets or sets the to apply to the . + The for the , or + + The ItemTemplate is used to define the visual appearance of objects from the . Through + the item template you can set up data bindings to the user objects supplied to automatically fill in the visual and respond to any changes in the user + object. + If the item template is , is called and the result is used as the visual. + + In this example, a template for a is created for a simple user object. + + + + + + + + + Identifies the property. + + + + The visual content to setup. + The index of the content. + Performs any additional setup for the content at creation time. + + This method is called when the is creating visuals for user items. At this point, + the will have been set. You can override this method to perform additional setup + for content specific to your subclass. , for example, uses + this method to set to itself. + + + + To be added. + Creates a default TVisual by using + To be added. + To be added. + + + To be added. + To be added. + Configures . + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + To be added. + Creates a new object for the specified that was tapped and the to which it belongs. + To be added. + + + The collection of elements to which the tapped item belongs. + To be added. + To be added. + + + The visual element that the user tapped. + To be added. + To be added. + + + Event args when an items visiblity has been changed in a . + + + + The modified item. + Initializes a new instance of the ItemVisibilityEventArgs class with the item whose visibility has changed. + + + + The item from the whose visibility has changed. + An object. + + + + Interface defining methods for two-way value conversion between types. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert to by using and . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert back from by using and . + To be added. + To be added. + + + To be added. + The type of element that can be added to the container. + + + + The children collection of a visual element. + The collection containing the visual elements children. + + + + Contains methods that set values from renderers on bound properties without breaking the binding. + To be added. + + + Method that is called when the native size of a visual element changes. + To be added. + + + When implemented in a renderer, called to invalidate the layout when the native size of a visual element changes. + To be added. + + + Default keyboard and base class for specialized keyboards, such as those for telephone numbers, email, and URLs. + To be added. + + + Gets an instance of type "ChatKeyboard". + To be added. + To be added. + + + To be added. + Returns a new keyboard with the specified . + To be added. + To be added. + + + Gets an instance of type "Keyboard". + To be added. + To be added. + + + Gets an instance of type "EmailKeyboard". + To be added. + To be added. + + + Gets an instance of type "NumericKeyboard". + To be added. + To be added. + + + Gets an instance of type "TelephoneKeyboard". + To be added. + To be added. + + + Gets an instance of type "TextKeyboard". + To be added. + To be added. + + + Gets an instance of type "UrlKeyboard".. + To be added. + To be added. + + + Flagging enumeration for Keyboard options such as Capitalization, Spellcheck, and Suggestions. + To be added. + + + Capitalize the first words of sentences, and perform spellcheck and offer suggested word completions on text that the user enters. + + + Capitalize the first words of sentences. + + + Perform spellcheck on text that the user enters. + + + Offer suggested word completions on text that the user enters. + + + A that converts a string into a . + + The following XAML snippet illustrates a case where a KeyboardTypeConverter is used behind the scenes: + + + ]]> + + The following shows some examples of forms: + + { + {"Keyboard.Default", Keyboard.Default}, + {"Keyboard.Email", Keyboard.Email}, + {"Keyboard.Text", Keyboard.Text}, + {"Keyboard.Url", Keyboard.Url}, + {"Keyboard.Telephone", Keyboard.Telephone}, + {"Keyboard.Chat", Keyboard.Chat}, +}) +Assert.AreSame (kvp.Value, converter.ConvertFrom (kvp.Key)); + ]]> + + + + + Initializes a new instance of the KayboardTypeConverter class. + + + + The type of the object. + Returns wheher this converter can convert an object of the given type. + + if the KeyboardTypeConverter can convert from sourceType. otherwise. + This method only returns is sourceType is . + + + The Culture fo the value parameter. + The object to convert from. + TConvert the given value into a Keyboard. + A . + This will throw an IvalidOperationException if the conversion failed. + + + A that displays text. + + A Label is used to display single-line text elements as well as multi-line blocks of text. + + + + The following example, adapted from the default Xamarin Forms solution, shows a basic use: + + + The FormsGallery sample, which can be found on the Sample Applications page, has a LabelDemoPage.cs file. This file contains a longer and more complete example. + + The class has the following XAML properties: + + + Property + Value + + + Font + + Deprecated. Use FontAttributes, FontFamily, and FontSize, instead. A string of the format [name],[attributes],[size]. The font specification may contain multiple attributes, e.g. Georgia, Bold, Italic, 42. + + + + FontAttributes + + + Bold, Bold,Italic, or None. + + + + FontFamily + + A font family, such as sans-serif or monospace. + + + + FontSize + + A named size, such as Large, or an integer that represents the size in device units. + + + + + LineBreakMode + + A string that corresponds to a enumeration value. + + + + Text + + The text that will appear on the label. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + XAlign + + + Center, End, or Start, to indicate the horizontal placement of the label text. + + + + YAlign + + + Center, End, or Start, to indicate the vertical placement of the label text. + + + + + + + Initializes a new instance of the Label class. + + + + Gets or sets the Font for the Label. This is a bindable property. + The value for the Label. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the label is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the label belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets the size of the font for the label. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the formatted text for the Label. This is a bindable property. + The value to be displayed inside of the Label. This is a bindable property. + Setting FromattedText to a non-null value will set the Text property to null. + + + + Backing store for the FormattedText property. + To be added. + + + Gets or sets the LineBreakMode for the Label. This is a bindable property. + The value for the Label. The default is + + + + Backing store for the LineBreakMode bindable property. + + + + Gets or sets the text for the Label. This is a bindable property. + The value to be displayed inside of the Label. + Setting Text to a non-null value will set the FormattedText property to null. + + + + Gets or sets the for the text of this Label. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Gets or sets the horizontal alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is left-aligned. + + + + Backing store for the XAlign bindable property. + + + + Gets or sets the vertical alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is top-aligned. + + + + Backing store for the YAlign bindable property. + + + + + Provides the base class for all Layout elements. Use Layout elements to position and size child elements in Forms applications. + + + Subtypes of include , , and , as shown in the following diagram. + The property of contains a list of children of the parameterized type T, which must be a type of . Since is itself a subclass of , this allows s to hold sub-layouts, scrolling regions, etc. + + + + The class has the following XAML properties: + + + Property + Value + + + IsClippedToBounds + + + true or false, to indicate whether the layout is clipped to its bounding rectangle. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + + + + + + + Intitializes a new instance. + To be added. + + + Forces a layout cycle on the element and all of its descendants. + + Calling ForceLayout frequently can have negative impacts on performance. + + + + The available width that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the Layout. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + + + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of the app. Overriding GetSizeRequest should only be done if the developer wants to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + + + Invalidates the current layout. + Calling this method will invalidate the measure and triggers a new layout cycle. + + + Gets or sets a value which determines if the Layout should clip its children to its bounds. + + if the Layout is clipped; otherwise, . The default value is . + To be added. + + + Identifies the bindable property. + + + + Occurs at the end of a layout cycle if any of the child element's have changed. + + Developers wishing to implement animations may wish to begin them at the end of a LayoutChanged event. + + + + The child element to be positioned. + The bounding region in which the child should be positioned. + Positions a child element into a bounding region while respecting the child elements and . + This method is called in the layout cycle after the general regions for each child have been calculated. This method will handle positioning the element relative to the bounding region given if the bounding region given is larger than the child's desired size. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a Layout. + Implementors wishing to change the default behavior of a Layout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The view to lower in the visual stack. + Sends a child to the back of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which the children are enumerated. + + + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + To be added. + + + The child element whose preferred size changed. + The event data. + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + This method has a default implementation and and application developers must call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has a default implementation which triggers the layout cycle of the Layout to begin. + + + Gets or sets the inner padding of the Layout. + The Thickness values for the layout. The default value is a Thickness with all values set to 0. + + + The padding is the space between the bounds of a layout and the bounding region into which its children should be arranged into. + + + The following example shows setting the padding of a Layout to inset its children. + + + + + + + + Identifies the Padding bindable property. + + + + The view to raise in the visual stack. + Sends a child to the front of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which they are enumerated. + + + To be added. + When implemented, should return if should call , and to return if it should not. + To be added. + To be added. + + + To be added. + When implemented, should return if should call when it is removed, and to return if it should not. + To be added. + To be added. + + + Instructs the layout to relayout all of its children. + This method starts a new layout cycle for the layout. Invoking this method frequently can negatively impact performance. + + + The subclass of the layout contains. + A base implementation of a layout with undefined behavior and multiple children. + + + s contain that are of the type T with which the was specified. This T must be of type . Since s are subclasses of , this means that layouts may be nested, contain scrolling regions, etc. + + The following image shows the relationship between , , , and important subtypes. + + + + + The following example shows adding and removing elements from a layout. + + + layout, IEnumerable newItems) + { + layout.Children.Clear (); + foreach (var item in newItems) { + layout.Children.Add (item); + } + } + ]]> + + + + + Provides the base initialization for objects derived from the Layout<T> class. + + + + Gets an IList<View> of child element of the Layout. + A IList<View>. The default is an empty list. + + + The Children collection of a Layout contains all the children added throught the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a layout, setting a property, and adding the children in the object initializer. + + + + + + + + The view which was added. + Invoked when a child is added to the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + The view which was removed. + Invoked when a child is removed from the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + Values that represent LayoutAlignment. + To be added. + + + The center of an alignment. + + + The end of an alignment. Usually the Bottom or Right. + + + Fill the entire area if possible. + + + The start of an alignment. Usually the Top or Left. + + + A struct whose static members define various alignment and expansion options. + To be added. + + + An alignment value. + Whether or not an element will expand to fill available space in its parent. + Creates a new object with and . + To be added. + + + Gets or sets a value that indicates how an element will be aligned. + The flags that describe the behavior of an element. + To be added. + + + A structure that describes an element that is centered and does not expand. + To be added. + + + A structure that describes an element that is centered and expands. + To be added. + + + A structure that describes an element that appears at the end of its parent and does not expand. + To be added. + + + A object that describes an element that appears at the end of its parent and expands. + To be added. + + + Gets or sets a value that indicates whether or not the element that is described by this structure will occupy the largest space that its parent will give to it. + Whether or not the element that is described by this structure will occupy the largest space that its parent will give it. if the element will occupy the largest space the parent will give to it. if the element will be as compact as it can be. + To be added. + + + A stucture that describes an element that has no padding around itself and does not expand. + To be added. + + + A structure that describes an element that has no padding around itself and expands. + To be added. + + + A structure that describes an element that appears at the start of its parent and does not expand. + To be added. + + + A structure that describes an element that appears at the start of its parent and expands. + To be added. + + + Enumeration specifying various options for line breaking. + To be added. + + + Wrap at character boundaries. + + + Truncate the head of text. + + + Truncate the middle of text. This may be done, for example, by replacing it with an ellipsis. + + + Do not wrap text. + + + Truncate the tail of text. + + + Wrap at word boundaries. + + + An that displays a collection of data as a vertical list. + + + + + The following example shows a basic use: + + people = new List + { + new Person("Abigail", new DateTime(1975, 1, 15), Color.Aqua), + new Person("Bob", new DateTime(1976, 2, 20), Color.Black), + // ...etc.,... + new Person("Yvonne", new DateTime(1987, 1, 10), Color.Purple), + new Person("Zachary", new DateTime(1988, 2, 5), Color.Red) + }; + + // Create the ListView. + ListView listView = new ListView + { + // Source of data items. + ItemsSource = people, + + // Define template for displaying each item. + // (Argument of DataTemplate constructor is called for + // each item; it must return a Cell derivative.) + ItemTemplate = new DataTemplate(() => + { + // Create views with bindings for displaying each property. + Label nameLabel = new Label(); + nameLabel.SetBinding(Label.TextProperty, "Name"); + + Label birthdayLabel = new Label(); + birthdayLabel.SetBinding(Label.TextProperty, + new Binding("Birthday", BindingMode.OneWay, + null, null, "Born {0:d}")); + + BoxView boxView = new BoxView(); + boxView.SetBinding(BoxView.ColorProperty, "FavoriteColor"); + + // Return an assembled ViewCell. + return new ViewCell + { + View = new StackLayout + { + Padding = new Thickness(0, 5), + Orientation = StackOrientation.Horizontal, + Children = + { + boxView, + new StackLayout + { + VerticalOptions = LayoutOptions.Center, + Spacing = 0, + Children = + { + nameLabel, + birthdayLabel + } + } + } + } + }; + }) + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + listView + } + }; + } + } +} + +]]> + + The class has the following XAML properties: + + + Property + Value + + + + HasUnevenRows + + + true or false, to indicate whether the items in the list all have the same height. + + + + IsGroupingEnabled + + + true or false, to indicate whether grouping is enabled. + + + + RowHeight + + An integer that describes the height of the items in the list. This is ignored if HasUnevenRows is true. + + + + + + + + Creates and initializes a new instance of the class. + + + + The item to create a default visual for. + Creates an instance of the default visual representation of an item. + + A instance with its text set to the string representation of the object (). + + + + This method is called by the templating system when is . + + + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + + Gets or sets the binding to use for display the group header. + The instance to apply to grouped lists, or . + + + This binding can be used to simply set a the text of the group headers without defining a full template and uses the default visuals + of the platform to display it. The binding is applied to the of the group. + + + This property is mutually exclusive with property. Setting it will set + to . + + + + This example shows an alphabetized list of people, grouped by first initial with the display binding set. + + + { + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } + } + ]]> + + + + + Identifies the property. + + + + Gets or sets a for group headers. + The for group headers, or . + + + Use this property to define a template for a that will be used as the header for groups in this + . The will be the + for each group. + + + GroupHeaderTemplate is mutually exclusive with . Setting this property + will set to . + + Empty groups will still display a group header. + + + + + + + Identifies the property. + + + + Gets or sets a binding for the name to display in grouped jump lists. + The instance to apply to grouped lists, or . + + + When grouping items in a , it is often useful to have jump lists to jump to specific + sections in the list. For example, in an alphabetically grouped lists, the jump list would be the the letter of each group. + This binding is applied against the of each group to select the short name to display + in the jump list. + + + Note: On Android, there is no displayed jump list. + + + + This example shows an alphabetized list of people, grouped by first initial with the short name binding set. + + +{ + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } +} + ]]> + + + + + Identifies the property. + + + + Gets or sets a Boolean value that indicates whether this element has uneven rows. + + if this control has uneven rows. Otherwise, + + + When the property is , the property is ignored for each child element that has a value that is greater than 0, in which case that element's value is used, instead. If a child element's property is equal to 0, then the value is used for that element. + + Setting this property to does not enable automatic sizing of cells. iOS as a platform must have a size specified ahead of time and due to this restriction you must set . + + + + Identifies the property. + + + + Gets or sets whether or not grouping is enabled for . + + if grouping is enabled, otherwise and by default. + + + + + + + Identifies the property. + + + + Occurs when the visual representation of an item is being added to the visual layout. + This method is guaranteed to fire at some point before the element is on screen. + + + Occurs when the visual representation of an item is being removed from the visual layout. + This method is for virtualization usage only. It is not guaranteed to fire for all visible items when the List is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Event that is raised when a new item is selected. + To be added. + + + Event that is raised when an item is tapped. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made.. + To be added. + To be added. + + + Gets or sets a value that represents the height of a row. + To be added. + To be added. + + + The backing store for the property. + + + + The item from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the . + + A linear search is done for the item, so if the same reference appears multiple times in the list, the first item will be scrolled to. This includes if grouping is enabled. + + + contains an invalid value for . + + + The item from your to scroll to. + The group from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the in the + + A linear search is done for the item, so if the same reference appears multiple times in the , the first item will be scrolled to. The same item in a different group will be ignored. + + + contains an invalid value for . + + + is . + + + Gets or sets the currently selected item from the . + The selected item or if no item is selected. + + + + Identifies the property. + + + + To be added. + To be added. + Makes this element the of the . + To be added. + + + To be added. + Raises the event for . + To be added. + + + To be added. + Raises the event for . + To be added. + + + Enumerates values that control how detail content is displayed in a master-detail page. + To be added. + + + To be added. + + + Details pop over the page. + + + Details are always displayed in a split screen. + + + Details are displayed in a split screen when the device is in landscape orientation. + + + Details are displayed in a split screen when the device is in portrait orientation. + + + A that manages two panes of information: A master page that presents data at a high level, and a detail page that displays low-level details about information in the master. + + The following example code, taken from the FormsGallery sample application, creates a that allows the user to view detailed information about a color that she chooses from a list. Note that the NamedColorPage class, defined in as a sublcass of in another file in the sample application, simply displays RGB data, a with its background color set to the color that the user selected, and, finally, hue, saturation, and luminosity data. + The sample below illustrates three key concepts. First, the "Master" portion of the MasterDetailPage is represented by the property, which is set to a element in this example. This element contains a label and a list of colors. Second, the "Detail" portion of the is represented by the property, which, in this example, is set to the NamedColorPage that was noted above. Third, and finally, the page that is represented by the property is displayed by setting the property to ; That is, the property controls whether or not the page that is represented by the is presented to the user. + The page must have its property set. Additionally, the page will only display a navigation bar if it is an instance of . + + + { + this.IsPresented = true; + })); + } + + // Define a selected handler for the ListView. + listView.ItemSelected += (sender, args) => + { + // Set the BindingContext of the detail page. + this.Detail.BindingContext = args.SelectedItem; + + // Show the detail page. + this.IsPresented = false; + }; + + // Initialize the ListView selection. + listView.SelectedItem = namedColors[0]; + + + } + } +} + ]]> + + + The Windows Phone and Android platforms do not support sliding the detail screen in order to show or hide it. Use a to allow the user to show and hide the Detail screen on these platforms. On Windows Phone, consider using a user interface class that provides an experience that is more consistent with that platform, such as . + + + + + Creates a new empty . + To be added. + + + Gets or sets the detail page that is used to display details about items on the master page. + To be added. + To be added. + + + Gets or sets a value that turns on or off the gesture to reveal the master page. This is a bindable property. + + if gesture is enabled; otherwise . Default is . + Has no effect on Windows Phone. + + + Backing store for the IsGestureEnabled bindable property. + + + + Gets or sets a value that indicates whether or not the visual element that is represented by the property is presented to the user. + To be added. + Setting this property causes the event to be raised. + + + Event that is raised when the visual element that is represented by the property is presented or hidden. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Lays out the master and detail pages. + To be added. + + + Gets or sets the master page. + To be added. + To be added. + + + Gets or sets a value that indicates how detail content is displayed. + To be added. + To be added. + + + Backing store for the MasterBehavior property. + To be added. + + + Event that is raised when a detail appears. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Event that is raised when a detail disappears. + To be added. + + + Method that is called when the property of this is set. + To be added. + + + To be added. + To be added. + To be added. + + + Class that presents a menu item and associates it with a command. + + The class has the following XAML properties: + + + Property + Value + + + Command + + A binding to a command. + + + + CommandParameter + + A parameter to pass to the command. + + + + + IsDestructive + + + true or false, to indicate whether the command deletes an item in a list. + + + + Text + + The text to display on the menu item. + + + + + + + Intitializes a new instance. + To be added. + + + Event that is raised when the menu item is clicked. + To be added. + + + Gets or sets the command that is run when the menu is clicked. + To be added. + To be added. + + + Gets or sets the parameter that is passed to the command. + To be added. + To be added. + + + Identifies the command parameter bound property. + To be added. + + + Identifies the command bound property. + To be added. + + + Gets or sets the icon for the menu item. + To be added. + To be added. + + + Identfies the icon bound property. + To be added. + + + Gets or sets a value that indicates whether or not the menu item removes its associated UI element. + To be added. + To be added. + + + Identifies the IsDestructive bound property. + To be added. + + + When overriden by an app dev, implements behavior when the menu item is clicked. + To be added. + + + The text of the menu item. + To be added. + To be added. + + + Identifies the text bound property. + To be added. + + + Associates a callback on subscribers with a specific message name. + + The following shows a simple example of a strongly-typed callback using is: + + (subscriber, "IntPropertyMessage", (s, e) => { + subscriber.IntProperty = e; +}); + +//...later... + +MessagingCenter.Send(this, "IntPropertyMessage", 2); +Assert.AreEqual(2, subscriber.IntProperty); + ]]> + + + + + To be added. + To be added. + To be added. + Sends a named message that has no arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Sends a named message with the specified arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to parameterized messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterless subscriber messages. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterized subscriber messages. + To be added. + + + The particular subclass of that the MultiPage services. + A bindable, templatable base class for pages which contain multiple sub-pages. + + Provides a base implementation for binding and templating pages. + The class has the following XAML properties: + + + Property + Value + + + ItemsSource + + XAML extension markup that specifies a static collection of data objects. + + + + ItemTemplate + + XAML markup that describes a view that has bindings to properties on the members of the collection that is specified by ItemsSource. + + + + + + + Provides the base initialization for objects derived from the MultiPage<T> class. + + provides two classes that are derived from , and . + + + + Gets an IList<Page> of child elements of the MultiPage. + A IList<Page>. The default is an empty list. + + + The collection of a contains all the children added through the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a , which descends from . + + + + + + + + The object which the default page should be templated from. + Create default provides a default method of creating new pages from objects in a binding scenario. + The newly created page. + Most implementors will not need to use or override CreateDefault. + + + Gets or sets the currently selected page. + The current page. The default value is null. + The default page will usually get set when the multi-page is displayed or templated. + + + Raised when the property changes. + + + + The source for the items to be displayed. + To be added. + To be added. + + + Identifies the property. + To be added. + + + The template for displaying items. + To be added. + To be added. + + + Identifies the bindable property. + + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + The child that was added. + Called when a child has been added to the . + + + + Raises the event. + + + + To be added. + Called when the pages of the have been changed. + To be added. + + + The name of the property that was changed. + Called when a bindable property has changed. + + + + Raised when the children pages of the have changed. + To be added. + + + The currently selected item. + The selected item from the or if nothing selected. + + + + Identifies the bindable property. + + + + To be added. + To be added. + When overriden in a derived class, performs initialization of . + To be added. + + + To be added. + Sets the page that is specified by as the default page. + To be added. + To be added. + + + To be added. + To be added. + Performs initialization of . + To be added. + + + Class that represents a list of property and binding conditions, and a list of setters that are applied when all of the conditions in the list are met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Conditions + + A list of PropertyCondition and/or BindingCondition markup instances that specify the conditions that all must be met before all of the setters that are listed in Setters are applied. + + + + Setters + + A list of setters that are applied when all of the property conditions are met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets the list of conditions that must be satisfied in ordeer for the setters in the list to be invoked. + To be added. + To be added. + + + Gets the list of objects that will be applied when the list of conditions in the property are all met. + To be added. + To be added. + + + Represents pre-defined font sizes. + The exact pixel-value depends on the platform on which Forms runs. + + + The default font size. + + + A Large font size, for titles or other important text elements. + + + A default font size, to be used in stand alone labels or buttons. + + + The smallest readable font size for the device. Think about this like legal footnotes. + + + A small but readable font size. Use this for block of text. + + + Extension methods for and that add strongly-typed FindByName methods. + To be added. + + + To be added. + To be added. + To be added. + Returns the instance of type that has name in the scope that includes . + To be added. + To be added. + + + EventArgs for the NavigationPage's navigation events. + + + + + + + The page that was popped or is newly visible. + + + + + Gets the page that was removed or is newly visible. + + + For , this is the that was removed. For + and it is the newly visible page, the pushed page or the root respectively. + + + + A that manages the navigation and user-experience of a stack of other pages. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + Initializes a new object. + To be added. + + + To be added. + Creates a new element with as its root element. + To be added. + + + Identifies the property associated with the title of the back button. + To be added. + + + Gets or sets the background color for the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar background color. + To be added. + + + Gets or sets the text that appears on the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar text color. + To be added. + + + The that is currently top-most on the navigation stack. + To be added. + To be added. + + + Identifies the property. + + + + The whose back-button's title is being requested. + The title of the back button for the specified . + The title of the back button that would be shown if the specified were the . + To be added. + + + To be added. + Returns a value that indicates whether has a back button. + To be added. + To be added. + + + The being queried. + Returns a value that indicates whether the has a navigation bar. + + if would display a navigation bar were it the . + To be added. + + + The whose title icon is being set. + Retrieves the path to the file providing the title icon for the . + The path to the file providing the title icon for the . + To be added. + + + Backing store for the HasBackButton property. + To be added. + + + Backing store for the HasNavigationBar property. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Asynchronously removes the top from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the top from the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised after a page is popped from this element. + To be added. + + + Event that is raised when the last nonroot element is popped from this element. + To be added. + + + Pops all but the root off the navigation stack. + A task that represents the asynchronous dismiss operation. + To be added. + + + To be added. + A task for asynchronously popping all pages off of the navigation stack. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + To be added. + + + To be added. + To be added. + A task for asynchronously pushing a page onto the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised when a page is pushed onto this element. + To be added. + + + To be added. + To be added. + Sets the title that appears on the back button for . + To be added. + + + To be added. + To be added. + Adds or removes a back button to , with optional animation. + To be added. + + + To be added. + To be added. + Sets a value that indicates whether or not this element has a navigation bar. + To be added. + + + The whose title icon is being set. + The FileImageSource of the icon. + Sets the title icon of the to the icon file at . + + + + + + + + + + + The color to be used as the Tint of the . + To be added. + + Tint is especially important in iOS 7 and later, where the Tint is primary way to specify which controls on screen are active or have an action associated with them. + + + + Identifies the bindable property. + To be added. + + + Indicates the / property. + To be added. + + + To be added. + Provides idiom-specific implementation of T for the current TargetIdiom. + + + + Initializes a new instance of OnIdiom + + + + To be added. + Implicitly converts OnIdiom to T, depending on Device.Idiom. + The value of the Phone or Tablet property, depending on the current Device.Idiom. + + + + Gets or sets the value applied on Phone-like devices. + A T. + + + + Gets or sets the value applied on Tablet-like devices. + A T. + + + + To be added. + Provides the platform-specific implementation of T for the current . + To be added. + + + Creates a new instance of the type. + To be added. + + + The type as it is implemented on the Android platform. + To be added. + To be added. + + + The type as it is implemented on the iOS platform. + To be added. + To be added. + + + To be added. + Casts the type to the version that corresponds to the platform. + To be added. + To be added. + + + The type as it is implemented on the WinPhone platform. + To be added. + To be added. + + + A that displays OpenGL content. + + + s are easiest to program using Shared Projects, in which case the reference to OpenTK is straightforward. The following example shows a simple OpenGL app with a render loop: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + + toggle.Toggled += (s, a) => { + view.HasRenderLoop = toggle.IsToggled; + }; + button.Clicked += (s, a) => view.Display (); + + var stack = new StackLayout { + Padding = new Size (20, 20), + Children = {view, toggle, button} + }; + + Content = stack; + } + } +} + ]]> + + + + + + + + Creates a new object with default values. + To be added. + + + Called prior to rendering. + To be added. + + + Whether this has a custom rendering loop. + To be added. + To be added. + + + Identifies the bindable property. + To be added. + + + Overridden to create a custom rendering loop. + To be added. + + When overridden, creates a custom renderer: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + ]]> + + + + + A that occupies the entire screen. + + + is primarily a base class for more useful derived types. Objects that are derived from the see class are most prominently used as the top level UI element in Xamarin.Forms applications. Typically, application developers will provide such an object to the target platforms by returning it from a static method that the developer created in a project that references . The contents of a typical App.cs file that would appear in a project that reference are shown below: + + +using Xamarin.Forms; + +namespace MyFirstFormsApp +{ + public class App + { + public static Page GetMainPage() + { + return new ContentPage { + Content = new Label { + Text = "Hello, Forms!", + VerticalOptions = LayoutOptions.CenterAndExpand, + HorizontalOptions = LayoutOptions.CenterAndExpand, + } + }; + } + } +} + + While a object was returned in the example above, note that any class that extends could have been passed, instead. For example, by using conditional compilation or by checking the platform, the developr can pass a to Windows Phone applications, in order to better match the style of the user interface on that platform, while passing objects or other Page types to the other platforms. + The other projects in the solution that target the Windows Phone, iOS, and Android platforms can call the GetMainPage method to obtain the descendant that describes the portable user interface. This object can then be used with platform-specific static methods or extension methods to incorporate it into the native UI for each platform. + On all platforms, Application developers must call the method before they get or create any elements. + Each targeted platform uses the returned page in a different way. The Xamarin.Forms.Platform.iOS library provides Xamarin.Forms.Page.CreateViewController() extension method, which returns a UIViewController that application developers can assign to the UIWindow.RootViewController property of the top-level UI. This code is typically placed inside the UIApplicationDelegate.FinishedLaunching override for the main application class. A typical example is shown below: + + +using System; +using Xamarin.Forms; + +namespace MyFirstFormsApp.iOS +{ + [Register("AppDelegate")] + public partial class AppDelegate : UIApplicationDelegate + { + UIWindow window; + + public override bool FinishedLaunching(UIApplication app, + NSDictionary options) + { + Forms.Init(); + + window = new UIWindow(UIScreen.MainScreen.Bounds); + + window.RootViewController = App.GetMainPage().CreateViewController(); + window.MakeKeyAndVisible(); + + return true; + } + } +} + + + + The Xamarin.Forms.Platform.Android.AndroidActivity class provides the Xamarin.Forms.Platform.Android.AndroidActivity.SetPage method, which performs the work that is necessary to make its page argument the top-level UI element of the Xamarin.Forms.Platform.Android.AndroidActivity. A typical example is shown below: + + +using System; +using Android.App; +using Android.OS; +using Xamarin.Forms.Platform.Android; + + +namespace MyFirstFormsApp.Android +{ + [Activity(Label = "MyFirstFormsApp", MainLauncher = true)] + public class MainActivity : AndroidActivity + { + protected override void OnCreate(Bundle bundle) + { + base.OnCreate(bundle); + + Xamarin.Forms.Forms.Init(this, bundle); + + SetPage(App.GetMainPage()); + } + } +} + + + For Windows Phone, provides an extension method for that is called . This method returns a System.Windows.UIElement object that has the page that was passed to it as its current page. A typical example is shown below: + + +using System; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Navigation; +using Microsoft.Phone.Controls; +using Microsoft.Phone.Shell; + +using Xamarin.Forms; + + +namespace MyFirstFormsApp.WinPhone +{ + public partial class MainPage : PhoneApplicationPage + { + public MainPage() + { + InitializeComponent(); + + Forms.Init(); + Content = Phoneword.App.GetMainPage().ConvertPageToUIElement(this); + } + } +} + + In addition to their role as the main pages of applications, objects and their descendants can be used with navigation classes, such as or , among others, to provide rich user experiences that conform to the expected behaviors on each platform. + The class has the following XAML properties: + + + Property + Value + + + BackgroundImage + + A local file specification that identifies an image. + + + + Icon + + A local file specification that identifies an image. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + Title + + Text that represents the title of the page. + + + + ToolbarItems + + A list of ToolBarItem elements. + + + + + + + Creates a new element with default values. + To be added. + + + Indicates that the is about to appear. + To be added. + + + Identifies the image used as a background for the . + To be added. + To be added. + + + Identifies the property. + To be added. + + + Indicates that the is about to cease displaying. + To be added. + + + Title of the displayed action sheet. + Text to be displayed in the 'Cancel' button. + Text to be displayed in the 'Destruct' button. + Text labels for additional buttons. + Displays a native platform action sheet, allowing the application user to choose from several buttons. + An awaitable Task that displays an action sheet and returns the Text of the button pressed by the user. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with a single cancel button. + To be added. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Accept' button. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with an accept and a cancel button. + To be added. + To be added. + + + Forces the to perform a layout pass. + To be added. + + + Resource identifier for the 's associated icon. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Marks the Page as busy. This will cause the platform specific global activity indicator to show a busy state. + A bool indicating if the Page is busy or not. + Setting IsBusy to true on multiple pages at once will cause the global activity indicator to run until both are set back to false. It is the authors job to unset the IsBusy flag before cleaning up a Page. + + + Identifies the property. + To be added. + + + Raised when the layout of the has changed. + To be added. + + + Left-hand side of layout area. + Top of layout area. + Width of layout area. + Height of layout area. + Lays out children s into the specified area. + To be added. + + + When overridden, allows application developers to customize behavior immediately prior to the becoming visible. + To be added. + + + Application developers can override this method to provide behavior when the back button is pressed. + To be added. + To be added. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + + Overriders must call the base method. + + + + To be added. + To be added. + Indicates that the preferred size of a child has changed. + To be added. + + + When overridden, allows the application developer to customize behavior as the disappears. + To be added. + + + Called when the 's property has changed. + To be added. + + + The width allocated to the . + The height allocated to the . + Indicates that the has been assigned a size. + To be added. + + + The space between the content of the and it's border. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Calls . + To be added. + To be added. + + + The 's title. + To be added. + To be added. + + + Identifies the property. + To be added. + + + A set of s, implemented in a platform-specific manner. + To be added. + To be added. + + + Requests that the children s of the update their layouts. + To be added. + + + A control for picking an element in a list. + + The visual representation of a Picker is similar to a , but a picker control appears in place of a keyboard. + The following example shows the creation of a Picker. + + nameToColor = new Dictionary + { + { "Aqua", Color.Aqua }, { "Black", Color.Black }, + { "Blue", Color.Blue }, { "Fuschia", Color.Fuschia }, + { "Gray", Color.Gray }, { "Green", Color.Green }, + { "Lime", Color.Lime }, { "Maroon", Color.Maroon }, + { "Navy", Color.Navy }, { "Olive", Color.Olive }, + { "Purple", Color.Purple }, { "Red", Color.Red }, + { "Silver", Color.Silver }, { "Teal", Color.Teal }, + { "White", Color.White }, { "Yellow", Color.Yellow } + }; + + public PickerDemoPage() + { + Label header = new Label + { + Text = "Picker", + Font = Font.BoldSystemFontOfSize(50), + HorizontalOptions = LayoutOptions.Center + }; + + Picker picker = new Picker + { + Title = "Color", + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + foreach (string colorName in nameToColor.Keys) + { + picker.Items.Add(colorName); + } + + // Create BoxView for displaying picked Color + BoxView boxView = new BoxView + { + WidthRequest = 150, + HeightRequest = 150, + HorizontalOptions = LayoutOptions.Center, + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + picker.SelectedIndexChanged += (sender, args) => + { + if (picker.SelectedIndex == -1) + { + boxView.Color = Color.Default; + } + else + { + string colorName = picker.Items[picker.SelectedIndex]; + boxView.Color = nameToColor[colorName]; + } + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + picker, + boxView + } + }; + + } + } +} +]]> + + The class has the following XAML properties: + + + Property + Value + + + Items + + A local file specification that identifies an image. + + + + SelectedIndex + + An integer, from 0 to 1 less than the count of items that are listed in Items. Currently, this element must be specified in a tag that appears lexically below Items. + + + + Title + + Text that represents the title of the picker. + + + + + + + + + + Initializes a new instance of the Picker class. + + + + Gets the list of choices. + An IList<string> representing the Picker choices. + This property is read-only, but exposes the IList<> interface, so items can be added using Add(). + + + Gets or sets the index of the slected item of the picker. This is a bindable property. + An 0-based index representing the selected item in the list. Default is -1. + A value of -1 represents no item selected. + + + Raised when the value of the SelectIndex property has changed. + To be added. + + + Identifies the SelectedIndex bindable property. + + + + Gets or sets the title for the Picker. This is a bindable property. + A string. + Depending on the platform, the Title is shown as a placeholder, headline, or not showed at all. + + + Identifies the Title bindable property. + + + + Struct defining a 2-D point as a pair of doubles. + To be added. + + + + that specifies a that has the coordinates (, ). + Creates a new object that has coordinates that are specified by the width and height of , in that order. + To be added. + + + The horizontal coordinate. + The vertical coordinate. + Creates a new object that represents the point (,). + To be added. + + + The to which the distance is calculated. + Calculates the distance between two points. + The distance between this and the . + To be added. + + + Another . + Returns if the X and Y values of this are exactly equal to those in the argument. + + if the X and Y values are equal to those in . Returns if is not a . + + The and values of the are stored as s. Developers should be aware of the precision limits and issues that can arise when comparing floating-point values. In some circumstances, developers should consider the possibility of measuring approximate equality using the (considerably slower) method. + + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Whether both X and Y are 0. + + if both and are 0.0. + To be added. + + + The amount to add along the X axis. + The amount to add along the Y axis. + Returns a new that translates the current by and . + A new at [this.X + dx, this.Y + dy]. + To be added. + + + The to which is being added. + The values to add to . + Returns a new by adding a to a . + A new at [pt.X + sz.Width, pt.Y + sz.Height]. + To be added. + + + A to be compared. + A to be compared. + Whether the two s are equal. + + if the two s have equal values. + To be added. + + + The to be translated as a . + Returns a new whose and and equivalent to the 's and properties. + A new based on the . + To be added. + + + A to be compared. + A to be compared. + Whether two points are not equal. + + if and do not have equivalent X and Y values. + To be added. + + + The from which is to be subtracted. + The whose and will be subtracted from 's and . + Returns a new by subtracting a from a . + A new at [pt.X - sz.Width, pt.Y - sz.Height]. + To be added. + + + Returns a new whose and have been rounded to the nearest integral value. + A new whose and have been rounded to the nearest integral value, per the behavior of Math.Round(Double). + To be added. + + + A human-readable representation of the . + The string is formatted as "{{X={0} Y={1}}}". + To be added. + + + Location along the horizontal axis. + To be added. + To be added. + + + Location along the vertical axis. + To be added. + To be added. + + + The at {0,0}. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that displays progress. + + The following example shows the usage of a ProgressBar. + + + + + + + The class has the following XAML property: + + + Property + Value + + + Progress + + A decimal value between 0 and 1, inclusive, that specifies the fraction of the bar that is colored. + + + + + + + Initializes a new instance of the ProgressBar class + + + + Gets or sets the progress value. This is s bindable property. + Gets or sets a value that specifies the fraction of the bar that is colored. + Values less than 0 or larger than 1 will be clamped to the range [0-1]. + + + Identifies the Progress bindable property. + + + + To be added. + To be added. + To be added. + Animate the Progress property to value. + A Task<bool> you can await on. + + + + Event arguments for the delegate. + To be added. + + + To be added. + Creates a new object that indicates that is changing. + To be added. + + + Gets the name of the property that is changing. + The name of the property that is changing. + To be added. + + + To be added. + To be added. + Delegate for the event. + To be added. + + + Class that represents a value comparison with a property. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to check. + + + + Value + + The value for which the condition is met. + + + + + + + Initializes a new instance. + To be added. + + + Gets or sets the property against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Provides a value by using the supplied service provider. + To be added. + To be added. + + + Struct defining a rectangle, using doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + Where Xamarin.Forms supports XAML for structures, app devs can represent the rectangle as a comma-separated list of the X-coordinate, Y-Coordinate, Width, and Height. + + + + To be added. + To be added. + Creates a new object with its top left corner at with a height and width that are specified by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with its top left corner at (, ) and wide and tall. + To be added. + + + The bottom of the . + To be added. + + Modifying this value also modifies the property. + + + + The halfway between and , and . + To be added. + To be added. + + + The being checked for containment. + Whether the is within, or along the periphery, of this . + + if is within, or along the periphery, of this. + To be added. + + + The being checked for containment. + Whether is entirely within, or along the periphery, of this . + + if the borders of are entirely within, or along the periphery, of this. + To be added. + + + The X location of the point being checked. + The Y location of the point being checked. + Whether the point described by and is within, or along the periphery of, this . + + if the point described by and is within, or along the periphery of, this. + To be added. + + + An Object to compare to this. + Whether an is a and has exactly the same values as this. + + if is a that has exactly the same values as this. + To be added. + + + The being compared to this. + Whether a has exactly the same values as this. + + if has exactly the same values as this. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Factory method to create a from , , , and . + A new whose values are equal to the arguments. + To be added. + + + The hashcode for the . + A value optimized for fast insertion and retrieval in a hash-based data structure. + To be added. + + + Extent along the Y axis. + To be added. + + Modifying this value modifies the property.. + + + Values to inflate all the borders. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by 's and whose and are inflated by 's . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in each dimension by twice . + + + + + + + Value to shift to the left and to the right. + Value to shift upward and downward. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by and whose and are inflated by . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in X by twice and larger in Y by twice . + + + + + + + A this will be intersected with. + A new that is the intersection of this and . + Returns a new that is the intersection of this and , or if there is no intersection. + To be added. + + + A being intersected. + A being intersected. + A new that is the intersection of and . + Returns a new that is the intersection of and , or if there is no intersection. + To be added. + + + The being intersected. + Whether this intersects . + + if this intersects . + To be added. + + + Whether this has either or less than or equal to 0. + + if either or is less than or equal to 0. + To be added. + + + The position of the on the X axis. + To be added. + To be added. + + + The defined by and . + To be added. + To be added. + + + A whose X and Y values should be added to this's . + A new whose is offset by . + A new whose is equal to this's translated by . + To be added. + + + Change along the X axis. + Change along the Y axis. + A new whose is offset by and . + A new whose is equal to this's translated by and . + To be added. + + + A being compared. + A being compared. + Whether two s have equal values. + + if both the and of the two rectangles are equivalent. + To be added. + + + A being compared. + A being compared. + Whether two s have unequal values. + + if either the or of the two rectangles have differences. + To be added. + + + The furthest extent along the X axis. + To be added. + To be added. + + + Returns a new whose values have been rounded to their nearest integral value. + A new whose , , , and have been rounded to their nearest integral values. + + The rounding is applied to each property independently. + + + + The extent of the along its X and Y axes. + To be added. + To be added. + + + The top of the . + To be added. + To be added. + + + A human-readable description of the . + The format is "{X={0} Y={1} Width={2} Height={3}}". + To be added. + + + The whose union is being calculated. + A new whose bounds cover the union of this and . + Returns a new whose bounds cover the union of this and . + To be added. + + + A whose union is being calculated. + A whose union is being calculated. + A new whose bounds cover the union of and . + Returns a new whose bounds cover the union of and . + To be added. + + + The extent of this along the X axis. + To be added. + To be added. + + + The position of this on the X axis. + To be added. + To be added. + + + The position of this on the Y axis. + To be added. + To be added. + + + The at {0,0} whose Size is {0,0}. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that uses s to layout its children. + + The RelativeLayoutExample class in the following code extends the class by adding a that contains a heading and another label. Both labels are positioned relative to the : + + { + return 0; + })); + + relativeLayout.Children.Add (relativelyPositioned, + Constraint.RelativeToParent ((parent) => { + return parent.Width / 3; + }), + Constraint.RelativeToParent ((parent) => { + return parent.Height / 2; + })); + this.Content = relativeLayout; + } +} +]]> + + For a more complete example that exercises many more of the layout options for the class, see the FormsGallery sample that can be found on the Sample Applications page. + The class has the following XAML attached properties: + + + AttachedProperty + Value + + + XConstraint + + XAML markup extension for a constraint expression. See . + + + + YConstraint + + XAML markup extension for a constraint expression. See . + + + + WidthConstraint + + XAML markup extension for a constraint expression. See . + + + + HeightConstraint + + XAML markup extension for a constraint expression. See . + + + + + + + Creates a new with default values. + To be added. + + + Identifies the bindable property associated with /. + To be added. + + + List of s that are children of this . + To be added. + To be added. + + + The for which the bounds constraint is being requested. + Returns the bounds constraint of the . + The of the . + To be added. + + + The for which the height constraint is being requested. + Returns the height constraint of the . + The on the height of the . + To be added. + + + The for which the width constraint is being requested. + Returns the width constraint of the . + The on the width of the . + To be added. + + + The for which the X constraint is being requested. + Returns the X constraint of the . + The on the X position of the . + To be added. + + + The for which the Y constraint is being requested. + Returns the Y constraint of the . + The on the Y position of the . + To be added. + + + Identifies the bindable property associated with the / methods. + To be added. + + + The left-side bound of the rectangle into which the children will be laid out. + The top bound of the rectangle into which the children will be laid out. + The width of the rectangle into which the children will be laid out. + The height of the rectangle into which the children will be laid out. + Lays out the in the specified rectangle. + To be added. + + + The added to the . + Called when a is added to the collection. + To be added. + + + The removed from the collection. + Called when a is removed from the collection. + To be added. + + + To be added. + To be added. + Called when this has received a size request. + To be added. + To be added. + + + The to which the constraint will be applied. + The on the . + Sets as a constraint on the bounds of . + To be added. + + + Identifies the width constraint. + To be added. + + + Identifies the constraint on X. + To be added. + + + Identifies the constraint on Y. + To be added. + + + To be added. + An of s used by a . + To be added. + + + To be added. + To be added. + Constrains to and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains to the rectangle that is defined by , , , and , and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains by , , , and , and adds it to the layout. + To be added. + + + Associate view with renderer. + Lazily assoicate a view with it's renderer. + + + The view to render. + The view to render. + The view to render. + + + The renderer for this view. + The renderer for this view. + The renderer for this view. + + + An IDictionary that maps identifier strings to arbitrary resource objects. + To be added. + + + Creates a new empty object. + To be added. + + + To be added. + + Add an implicit Style to the ResourceDictionary. Implicit Styles are applied to all VisualElements matching TargetType in the descendants of this ResourceDictionary owner, unless a Style is explicitely applied to the Element. + + Implicit Styles are added to a ResourceDictionary in XAML by not specifying an x:Key for the Element. + + To be added. + + + The identifier to be used to retrieve the . + The associated with the . + Adds and to the as a key-value pair. + To be added. + + + Empties the . + To be added. + + + The identifier being searched for. + Whether the contains a key-value pair identified by . + To be added. + To be added. + + + The number of entries in the . + To be added. + To be added. + + + Returns a of the 's s. + To be added. + To be added. + + + The identifier of the desired object. + Retrieves the value associated with the key . + To be added. + To be added. + + + The collection of identifier s that are keys in the . + To be added. + To be added. + + + The identifier of the key-value pair to be removed. + Removes the key and value identified by from the . + + if the key existed and the removal was successful. + To be added. + + + To be added. + Adds an item to the collection. + To be added. + + + To be added. + Returns a value that indicates whether the dictionary contains the value in , indexed by the key in . + To be added. + To be added. + + + To be added. + To be added. + Copies the values in the dictionary to , starting at position in . + To be added. + + + Gets a value that indicates whether the resource dictionary is read-only. + To be added. + To be added. + + + To be added. + Removes the value in , indexed by the key in , from the dictionary, if present. + To be added. + To be added. + + + Returns a of the 's s. + An of the 's s. + To be added. + + + The identifier of the object to be retrieved. + An reference to the object being retrieved, or it's default value. + Retrieves the object specified by or, if not present, the default value of . + The object specified by or, if not present, the default value of . + To be added. + + + Retrieves the values of the . + To be added. + To be added. + + + An that defines properties for a row in a . + + The class has the following XAML property: + + + Property + Value + + + Height + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute height. + + + + + App developers can specify values for the property in XAML. This is typically done inside tags for the collection property. The following example demonstrates setting three row heights to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Gets or sets the height of the row. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the size of the row is changed. + To be added. + + + A for s. + To be added. + + + Creates a new empty object. + To be added. + + + Enumeration specifying vertical or horizontal scrolling directions. + To be added. + + + Scroll Horizontally. + + + Scroll vertically. + + + Enumerates values that describe a scroll request. + To be added. + + + Scroll to the center of a list. + + + Scroll to the end of a list. + + + Scroll to make a specified list item visible. + + + Scroll to the start of a list. + + + An element capable of scrolling if its Content requires. + + The following example shows the creation of a ScrollView with a large in it. + + + + Application developers should not nest one within another. Additinoally, they should refrain from nesting them other elements that can scroll, such as . + + + + The class has the following XAML properties: + + + Property + Value + + + Content + + Markup that specifies a to display in the . + + + + Orientation + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance of the ScrollView class. + + + + Gets or sets a to display in the . + The that is displayed. + + + + Gets the size of the Content. This is a bindable property. + A that represents the size of the content. + + + + Identifies the ContentSize bindable property. + This bindable property is read-only. + + + A value that represents the x coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + Positions and sizes the content of a ScrollView. + + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + + A which contains the desired size of the element. + + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the scrolling direction of the ScrollView. This is a bindable property. + + + + + Identifies the Orientation bindable property. + + + + A control that provides a search box. + + The following example shows a basic use. + + >(); + resultsLabel.Text = ""; + + // Get Xamarin.Forms assembly. + Assembly xamarinFormsAssembly = typeof(View).GetTypeInfo().Assembly; + + // Loop through all the types. + foreach (Type type in xamarinFormsAssembly.ExportedTypes) + { + TypeInfo typeInfo = type.GetTypeInfo(); + + // Public types only. + if (typeInfo.IsPublic) + { + // Loop through the properties. + foreach (PropertyInfo property in typeInfo.DeclaredProperties) + { + // Check for a match + if (property.Name.Equals(searchText)) + { + // Add it to the list. + list.Add(Tuple.Create(type, property.PropertyType)); + } + } + } + } + + if (list.Count == 0) + { + resultsLabel.Text = + String.Format("No Xamarin.Forms properties with " + + "the name of {0} were found", + searchText); + } + else + { + resultsLabel.Text = "The "; + + foreach (Tuple tuple in list) + { + resultsLabel.Text += + String.Format("{0} type defines a property named {1} of type {2}", + tuple.Item1.Name, searchText, tuple.Item2.Name); + + if (tuple != list.Last()) + { + resultsLabel.Text += "; and the "; + } + } + + resultsLabel.Text += "."; + } + } + } +}]]> + + + + + The class has the following XAML properties: + + + Property + Value + + + CancelButtonColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + + The default text that will appear in the search bar when it is empty. + + + + SearchCommand + + XAML markup extension that describes a binding to a command. + + + + SearchCommandParameter + + The parameter for the search command. + + + + Text + + The initial text that will appear in the search bar. + + + + + + + Creates a new . + To be added. + + + Gets or sets the color of the cancel button. + To be added. + To be added. + + + Backing store for the CancelButtonColor property. + To be added. + + + Gets or sets the text that is displayed when the is empty. + The text that is displayed when the is empty. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the user presses the Search button. + To be added. + + + Gets or sets the command that is run when the user presses Search button. + The command that is run when the user presses Search button. + To be added. + + + Gets or sets the parameter that is sent to the . + The parameter that is sent to the . + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets the text that is displayed in the . + The text that is displayed in the . + To be added. + + + Event that is raised when the property is changed. For example, this event is raised as the user edits the text in the SearchBar. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + Creates a new event that indicates that the user has selected . + To be added. + + + Gets the new selected item. + To be added. + To be added. + + + Represents an assignment of a property to a value, typically in a style or in response to a trigger. + + Setters are used with triggers and styles. + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to set. + + + + Value + + The value to apply to the property. + + + + + + + Creates a new object. + To be added. + + + The property on which to apply the assignment. + To be added. + + Only bindable properties can be set with a .. + + + The value to assign to the property. + To be added. + To be added. + + + To be added. + + + + To be added. + To be added. + + + Defines extensions methods for IList<Setter> + + + + + + To be added. + To be added. + To be added. + Add a Setter with a value to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a Binding to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a DynamicResource to the IList<Setter> + To be added. + + + Struct defining height and width as a pair of doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + + + + To be added. + To be added. + Creates a new object with and . + To be added. + + + The object to which this is being compared. + Whether this is equivalent to . + + if is a whose values are identical to this's and . + To be added. + + + The to which this is being compared. + Whether this is equivalent to . + + if 's values are identical to this's and . + To be added. + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Magnitude along the vertical axis, in platform-specific units. + To be added. + To be added. + + + Whether the has and of 0.0. + + if both and are 0.0. + To be added. + + + A to be added. + A to be added. + Returns a new whose and are the sum of the component's height and width. + A whose is equal to s1.Width + s2.Width and whose is equal to sz1.Height + sz2.Height. + To be added. + + + A to be compared. + A to be compared. + Whether two s have equal values. + + if and have equal values for and . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + The to be converted to a . + Returns a new based on a . + A whose and are equal to 's and , respectively. + To be added. + + + To be added. + To be added. + Whether two s have unequal values. + + if and have unequal values for either or . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + A to be scaled. + A factor by which to multiple 's and values. + Scales both and . + A new whose and have been scaled by . + To be added. + + + A from whose values a size will be subtracted. + The to subtract from . + Returns a new whose and are 's height and width minus the values in . + A whose is equal to s1.Width - s2.Width and whose is equal to sz1.Height - sz2.Height. + To be added. + + + Returns a human-readable representation of the . + The format has the pattern "{Width={0} Height={1}}". + To be added. + + + Magnitude along the horizontal axis, in platform-defined units. + To be added. + To be added. + + + The whose values for height and width are 0.0. + To be added. + + + Struct defining minimum and maximum s. + To be added. + + + To be added. + Creates a new object with default values. + To be added. + + + To be added. + To be added. + Creates a new object that requests at least the size , but preferably the size . + To be added. + + + The minimum acceptable size. + To be added. + To be added. + + + The requested size. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + A control that inputs a linear value. + + + + + The class has the following XAML properties: + + + Property + Value + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + + + + Initializes a new instance of the Slider class. + + The following example shows a basic use. + + + + + + + The minimum selectable value. + The maximum selectable value. + The actual value. + Initializes a new instance of the Slider class. + + + + Gets or sets the maximum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Maximum bindable property. + + + + Gets or sets the minimum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Minimum bindable property. + + + + Gets or sets the current value. This is a bindable property. + A double. + + + + The ValueChanged event is fired when the Value property changes. + + + + Identifies the Value bindable property. + + + + Represents a part of a FormattedString. + To be added. + + + Initialize a new instance of the Span class. + To be added. + + + Gets or sets the Color of the span background. + To be added. + Not supported on WindowsPhone. + + + Gets or sets the Font for the text in the span. + To be added. + To be added. + + + Gets a value that indicates whether the font for the span is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which the font for the text in the span belongs. + To be added. + To be added. + + + Gets the size of the font for the text in the span. + To be added. + To be added. + + + Gets or sets the Color for the text in the span. + To be added. + To be added. + + + Event that is raised when a property is changed. + To be added. + + + Gets or sets the text of the span. + To be added. + To be added. + + + A that positions child elements in a single line which can be oriented vertically or horizontally. + + Because layouts override the bounds on their child elements, application developers should not set bounds on them. + + The following example code, adapted from the FormsGallery example shows how to create a new with children that explore many of the layout behaviors of : + + + + + + The class has the following XAML properties: + + + Property + Value + + + Orientation + + + Horizontal or Vertical. The default is Vertical. + + + + Spacing + + An integer or decimal. + + + + + + + Initializes a new instance of the StackLayout class. + + + The following example shows the initialization of a new StackLayout and setting its orientation and children. + + + + + + + + To be added. + To be added. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a StackLayout. + Implementors wishing to change the default behavior of a StackLayout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The available width for the StackLayout to use. + The available height for the StackLayout to use. + This method is called during the measure pass of a layout cycle to get the desired size of the StackLayout. + A which contains the desired size of the StackLayout. + The results of this method will be a sum of all the desired sizes of its children along the orientation axis, and the maximum along the non-orientation axis. + + + Gets or sets the value which indicates the direction which child elements are positioned. + A which indicates the direction children layouts flow. The default value is Vertical. + Setting the Orientation of a StackLayout triggers a layout cycle if the stack is already inside of a parent layout. To prevent wasted layout cycles, set the orientation prior to adding the StackLayout to a parent. + + + Identifies the Orientation bindable property. + + + + Gets or sets a value which indicates the amount of space between each child element. + A value in device pixels which indicates the amount of space between each element. The default value is 6.0. + + + Setting this value triggers a layout cycle if the StackLayout is already in a parent Layout. + + + The following example sets the Spacing on construction of a StackLayout. + + + + + + + + Identifies the Spacing bindable property. + + + + The orientations the a StackLayout can have. + + + + StackLayout should be horizontally oriented. + + + StackLayout should be vertically oriented. + + + A control that inputs a discrete value, constrained to a range. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + Increment + + An integer or decimal literal. + + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + ValueChanged + The name of an event handler. Note that this tag must appear below Value. + + + + + + Initializes a new instance of the Stepper class. + To be added. + + + The minimum selectable value. + The maximum selectable value. + The current selected value. + The increment by which Value is increased or decreased. + Initializes a new instance of the Stepper class. + To be added. + + + Gets or sets the increment by which Value is increased or decreased. This is a bindable property. + A double. + + + + Identifies the Increment bindable property. + To be added. + + + Gets or sets the maximum selectable value. This is a bindable property. + A double. + To be added. + + + Identifies the Maximum bindable property. + To be added. + + + Gets or sets the minimum selectabel value. This is a bindable property. + A double. + To be added. + + + Identifies the Minimum bindable property. + To be added. + + + Gets or sets the current value. This is a bindable property. + A double. + To be added. + + + Raised when the property changes. + To be added. + + + Identifies the Value bindable property. + To be added. + + + + that loads an image from a . + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed.. + To be added. + + + Gets or sets the delegate responsible for returning a for the Image. + + + + + Backing store for the property. + To be added. + + + Class that contains triggers, setters, and behaviors that completely or partially define the appearance and behavior of a class of visual elements. + + The class has the following XAML properties: + + + Property + Value + + + BasedOn + + A StaticResource markup extension that names the style on which this style is based. + + + + BaseResourceKey + + A resource dictionary key that names a dynamic base style. + + + + Behaviors + + Markup for the behaviors that are associated with the style. + + + + Setters + + A list of setters containing Property and Value elements or attributes. + + + + TargetType + + The name of the type that the style is intended for. + + + + Triggers + + A list of triggers. + + + + + + + To be added. + Intitializes a new instance. + To be added. + + + The on which this is based. + To be added. + The supports a mechanism in XAML that is similar to inheritance in C#. + + + Gets or sets the key that identifies the on which this is based. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the type of object that this style can describe. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + A control that provides a toggled value. + + The following example describes a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + IsToggled + + + true or false, to indicate whether the switch has been toggled. + + + + Toggled + + The name of an event handler. Note that this tag must appear below IsToggled. + + + + + + + Creates a new element with default values. + To be added. + + + Gets or sets a Boolean value that indicates whether this element is toggled. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when this is toggled by the user. + To be added. + + + A with a label and an on/off switch. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + On + + + true or false, to indicate whether the switch cell is in the "on" position. + + + + OnChanged + + The name of an event handler. Note that this tag must appear below On. + + + + Text + + Text that represents the title of the switch cell. + + + + + + + Initializes a new instance of the SwitchCell class. + To be added. + + + Gets or sets the state of the switch. This is a bindable property. + Default is . + To be added. + + + Triggered when the switch has changed value. + To be added. + + + Identifies the bindable property. + To be added. + + + Gets or sets the text displayed next to the switch. This is a bindable property. + + To be added. + + + Identifies the Text bindable property. + To be added. + + + + that displays an array of tabs across the top of the screen, each of which loads content onto the screen. + + The user interface of a tabbed page consists of a list of items across the top of the screen, and a larger detail area below. The user can scroll the collection of tabs that are across the top of the screen if that collection is too large to fit on one screen. App developers can create tabbed pages in either of two ways. First, application developers can assign a list of objects of a single class, or its subclasses, to the property and assign a to the property to return pages for objects of the least derived type. Second, app developers can add a succession of objects to the property. Both methods are shown in the code examples below. + + The following example code, adapted for brevity from the FormsGallery sample that can be found on the Sample Applications page, shows how to display data of a specific type by assigning a to the property. Note how NamedColorPage gets its color by binding its field. + { + return new NamedColorPage (); + }); + } + } + + // Data type: + class NamedColor + { + public NamedColor (string name, Color color) + { + this.Name = name; + this.Color = color; + } + + public string Name { private set; get; } + + public Color Color { private set; get; } + + public override string ToString () + { + return Name; + } + } + + // Format page + class NamedColorPage : ContentPage + { + public NamedColorPage () + { + // This binding is necessary to label the tabs in + // the TabbedPage. + this.SetBinding (ContentPage.TitleProperty, "Name"); + // BoxView to show the color. + BoxView boxView = new BoxView { + WidthRequest = 100, + HeightRequest = 100, + HorizontalOptions = LayoutOptions.Center + }; + boxView.SetBinding (BoxView.ColorProperty, "Color"); + + // Build the page + this.Content = boxView; + } + } +} + + +]]> + + + The example below creates a tabbed view with two instances. + + + + + + + + + Creates a new element with default values. + To be added. + + + An object for which to create a default page. + Creates a default page, suitable for display in this page, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Called when the parent is set. + This method iterates up the hierarchy and writes a message to the debug listeners if it detects a . Application developers are advised that adding a to a may produce undesirable results. + + + TableIntent provides hints to the renderer about how a table will be used. + Using table intents will not effect the behavior of a table, and will only modify their visual appearance on screen, depending on the platform. Not all intents are unique on all platforms, however it is advisable to pick the intent which most closely represents your use case. + + + A table intended to contain an arbitrary number of similar data entries. + + + A table which is used to contain information that would normally be contained in a form. + + + A table intended to be used as a menu for selections. + + + A table containing a set of switches, toggles, or other modifiable configuration settings. + + + A that contains either a table section or the entire table. + To be added. + + + Constructs and initializes a new instance of the class. + To be added. + + + The title of the table. + Constructs and initializes a new instance of the class with a title. + To be added. + + + A logical and visible section of a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new with the title . + To be added. + + + Abstract base class defining a table section. + + + + + The class has the following XAML property: + + + Property + Value + + + Title + + A title for the section. + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Creates a new object with the specified . + To be added. + + + Gets or sets the title. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + + Table section that contains instances of type T that are rendered by Xamarin.Forms. + + + Sections are used to group cells in the screen and they are the + only valid direct child of the . Sections can contain + any of the standard s, including new s. + + + s embedded in a section are used to navigate to a new + deeper level. + + + You can assign a header and a footer either as strings (Header and Footer) + properties, or as Views to be shown (HeaderView and FooterView). Internally + this uses the same storage, so you can only show one or the other. + + Subtypes of are and , as shown in the following diagram: + + + + + + + + Constructs a new instance with an empty title. + + To be added. + + + To be added. + + Constructs a new instance with the specified . + + To be added. + + + The items to add. + Adds a list of items to this object. + To be added. + + + The item to add. + Adds an item to this object. + To be added. + + + Removes all items in this . + To be added. + + + Event that is raised when one or more items is added to or removed from this object. + To be added. + + + The object for which to determine whether or not this object has a reference. + Returns a Boolean value that indicates whether or not this has a reference to a particular object. + + if this object contains a reference to . Otherwise, . + To be added. + + + To be added. + To be added. + Copies the elements of the current collection to an , starting at the specified index. + To be added. + + + Gets the number of items in this object. + The number of items in this object. + To be added. + + + Returns an enumerator that iterates through the items in this object. + To be added. + To be added. + + + The instance for which to find its index. + Returns the index of the first occurrence of in this object. + The index of the first occurrence of in this object. + To be added. + + + The position at which to insert . + The item to insert. + Inserts an item into this object at the specified position. + To be added. + + + The location of the item to return. + Returns the item that is stored at the location in this object that is specified by . + To be added. + To be added. + + + Calls the method, passing the new binding context, on each of the items in this object. + To be added. + + + To be added. + Removes a specified item from this object. + + , if item was removed from the current collection; if item was not found in the current collection.. + To be added. + + + The position in this object from which to remove an item. + Removes a specified item from this object at the position that is specified by . + To be added. + + + Returns ; The collection of objects in this can be changed. + + ; The collection of objects in this object can be changed. + To be added. + + + Returns an enumerator that iterates through the collection of objects in this object. + To be added. + To be added. + + + A that holds rows of elements. + + A has a as its property. The is a type of . + The following example shows a basic table with two sections. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasUnevenRows + + + true or false, to indicate whether rows in the table view will specify their own height. + + + + Intent + + + Data, Form, Menu, or Settings. + + + + RowHeight + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the rows that are contained in this can have uneven rows. + To be added. + + When the property is , application developers can set the properties to control the height of items in the table. When the property is , the property is ignored. When the property is , app developers can set the property to set the height of all Cells, and their individual properties are ignored. + + + + Backing store for the HasUnevenRows property. + To be added. + + + Gets or sets the intent of the table. + To be added. + To be added. + + + Method that is called when the binding context changes. + To be added. + + + Method that is called when the model changes. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made. + To be added. + To be added. + + + Gets or sets the root of the table. + To be added. + To be added. + + + Gets or sets the row height. + To be added. + To be added. + + + Backing store for the row height property. + To be added. + + + Provides tap gesture recognition and events. + Can be used to recognize single and multiple tap gestures. + + + Initializes a new instance of a TapGestureRecognizer object. + + + + An action whose first argument is the View the recognizer is associated with and whose second argument is the callback parameter. + Initializes a new instance of a TapGestureRecognizer object with a parameterized callback. + + + + An action whose first argument is the View the recognizer is associated with. + Initializes a new instance of a TapGestureRecognizer object with a callback. + + + + The Command to invoke when the gesture has been triggered by the user. This is a bindable property. + To be added. + The object passed to the Command will be the contents of + + + An object to be passed to the TappedCallback. This is a bindable property. + To be added. + To be added. + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + The number of taps required to trigger the callback. This is a bindable property. + The number of taps to recognize. The default value is 1. + + + + Identifies the NumberOfTapsRequired bindable property. + To be added. + + + Event that is raised when the user taps. + To be added. + + + The action to invoke when the gesture has been triggered by the user. This is a bindable property. + An action that will be invoked. + The object passed to the callback will be the contents of . + + + An object to be passed to the TappedCallback. This is a bindable property. + An object. + The primary use case for this property is Xaml bindings. + + + Identifies the TappedCallbackParameter bindable property. + + + + Identifies the TappedCallback bindable property. + + + + Arguments for the event. + To be added. + + + To be added. + Creates a new object with the supplied parameter. + To be added. + + + Gets the parameter object for this object. + To be added. + To be added. + + + Indicates the type of device Forms is working on. + + + + (Unused) Indicates that Forms is running on a computer. + + + Indicates that Forms is running on a Phone, or a device similar in shape and capabilities. + + + Indicates that Forms is running on a Tablet. + + + (Unused) Indicates that Forms is running on an unsupported device. + + + Indicates the kind of OS Forms is currently working on. + + + + Indicates that Forms is running on a Google Android OS. + + + Indicates that Forms is running on an Apple iOS OS. + + + (Unused) Indicates that Forms is running on an undefined platform. + + + Indicates that Forms is running on a Microsoft WinPhone OS. + + + Extension class for DataTemplate, providing a string-based shortcut method for defining a Binding. + To be added. + + + To be added. + To be added. + To be added. + Binds the object's to a new instance that was created with . + To be added. + + + Represents vertical and horizontal text alignement. + This affects the way the text is diaplayed inside of its control bounds. + + + Center-aligned text. + + + End-flushed text. It means right-aligned (resp: bottom-aligned) for horizontal (resp vertical) alignemnt. + + + Start-flushed text. It means left-aligned (resp: top-aligned) for horizontal (resp vertical) alignemnt. + + + + A with primary and text. + + + The following example shows a basic use. + + + + + + + + + + Initializes a new instance of the TextCell class. + + + + Gets or sets the ICommand to be executed when the TextCell is tapped. This is a bindable property. + + Setting the Command property has a side effect of changing the Enabled property depending on ICommand.CanExecute. + + + Gets or sets the parameter passed when invoking the Command. This is a bindable property. + + + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + Gets or sets the secondary text to be displayed in the TextCell. This is a bindable property. + + + + + Gets or sets the color to render the secondary text. This is a bindable property. + The color of the text. Color.Default is the default color value. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. + + + Identifies the DetailColor bindable property. + + + + Gets or sets the secondary text to be displayed. This is a bindable property. + + + + Invoked whenever the Cell is Tapped. + Overriden for TextCell. + + + Gets or sets the primary text to be displayed. This is a bindable property. + + + + + Gets or sets the color to render the primary text. This is a bindable property. + The color of the text. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. Color.Default is the default color value. + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + Event arguments for TextChanged events. Provides old and new text values. + To be added. + + + To be added. + To be added. + Creates a new with and . + To be added. + + + Gets the new text value. + To be added. + To be added. + + + Gets the old text value. + To be added. + To be added. + + + Struct defining thickness around the edges of a using doubles. + To be added. + + + To be added. + Creates a new object that represents a uniform thickness of size . + To be added. + + + To be added. + To be added. + Creates a new object that has a horizontal thickness of and a vertical thickness of . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with thicknesses defined by , , , and . + To be added. + + + The thickness of the bottom of a rectangle. + To be added. + To be added. + + + A to be compared. + Whether the is a with equivalent values. + + if is a and has equivalent values.. + To be added. + + + A has value for this . + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + The thickness of the left side of a rectangle. + To be added. + To be added. + + + A to be compared. + A to be compared. + Whether two es have identical values. + + if and have identical values for ,, , and . + To be added. + + + The value for the uniform Thickness. + Implicit cast operator from . + A Thickness with an uniform size. + + Application developers should bear in mind that and are the sums of their components, so a created from a of, for instance, 1.0, will have of 2.0. + + + + A to convert to a + Converts a into a . + To be added. + + The 's and are both set equal to the 's and the 's and are both set equal to the 's . + + + + A to be compared. + A to be compared. + Whether the values of two 's have at least one difference. + + if any of the ,, , and values differ between and . + To be added. + + + The thickness of the right side of a rectangle. + To be added. + To be added. + + + The thickness of the top of a rectangle. + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that provides time picking. + + The visual representation of a TimePicker is very similar to the one of , except that a special control for picking a time appears in place of a keyboard. + + The following example shows declaration of a TimePicker with a default time set. + + + + + + + + + + + Initializes a new TimePicker instance. + + + + The format of the time to display to the user. This is a bindable property. + A valid time format string. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format bindable property. + + + + Gets or sets the displayed time. This is a bindable property. + The displayed in the TimePicker. + To be added. + + + Identifies the Time bindable property. + + + + Event arguments for and events. + To be added. + + + To be added. + Creates a new that indicates that the toggle control was toggled to . + To be added. + + + Gets the Boolean value to which the toggle control was toggled. + To be added. + To be added. + + + An item in a toolbar or displayed on a . + + Any changes made to the properties of the toolbar item after it has been added will be ignored. + Windows Phone ApplicationBarButtons and MenuItems always display an associated text. Therefore, when developing for Windows Phone, application devs should provide a value for the property. Otherwise, the file name of the icon image will be dixplayed as the text of the . (For example, the user might see "menu.png" in the user interface.) + + + + Constructs and initializes a new instance of the class. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constructs and initializes a new instance of the class. + + + + Raised when the is touched or clicked. + + + + Gets or sets the to be invoked on activation. + The to be invoked on activation. + + + + Gets or sets the parameter to pass to the that is invoked on activation. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets a string that identifies the image that is displayed on this element. + To be added. + To be added. + + + Gets or sets the name of the . + The name of the toolbar item.. + + + + Gets or sets a value that indicates on which of on the primary, secondary, or default toolbar surfaces to display this element. + To be added. + To be added. + + + Gets or sets the priority of this element. + To be added. + To be added. + + + Gets or sets the toolbar to which this element belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying whether the appears on the primary toolbar surface or secondary. + To be added. + + + Use the default choice for the toolbar item. + + + Place the toolbar item on the primary toolbar surface. + + + Place the toolbar item on the secondary toolbar surface. + + + Class that represents a property condition and an action that is performed when the condition is met. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the property whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the property that is named by becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the property, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + This property supports XAML infrastructure and is not intended to be directly used by application developers. + To be added. + To be added. + + + A base class for user-defined actions that are performed when a trigger condition is met. + Application developers should use , instead. + + + The type of the objects with which this can be associated. + Creates a new instance of the TriggerAction class. + + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to provide the behavior that is triggered. + To be added. + + + The type of which the property must be an instance. + A generic base class for user-defined actions that are performed when a trigger condition is met. + + + + Creates a new instance of the class. + + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + Base class for classes that contain a condition and a list of actions to perform when the condition is met. + + + + Gets the list of objects that will be invoked when the trigger condition is met. Ignored for the class. + + + + + Gets the list of objects that will be invoked after the trigger condition is no longer met. Ignored for the class. + + + + + Gets a value that indicates whether or not the trigger is sealed. + To be added. + A trigger becomes sealed when its method is called. Once it is sealed, its and lists become readonly. + + + The type of object to which this object can be attached. + To be added. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + This method throws an exception if is not an instance of . In that case, the method is not called. + + + To be added. + Attempts to detach from . If successful, calls .. + This method throws an exception if is . In that case, the method is not called. + + + Abstract base class whose subclasses can convert values between different types. + + The following diagram shows subclasses of . + + + + + + + Creates a new object. + To be added. + + + To be added. + When implemented in a derived class, returns a Boolean value that indicates whether or not the derived type converter can convert to its target type. + To be added. + To be added. + + + To be added. + Calls with the current culture information and . + To be added. + To be added. + + + To be added. + To be added. + When implemented in a derived class, converts an object that is a version of and that can be cast to the target type. + To be added. + To be added. + + + Attribute that specifies the type of used by its target. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new object that specifies that the class it decorates converts values to the type. + To be added. + + + To be added. + reates a new object that specifies that the class it decorates converts values to . + To be added. + + + The name of the type to which the class decorated with this attribute can convert values. + To be added. + To be added. + + + A that contains no information about the types to which the class that it decorates can convert values. + To be added. + + + To be added. + Returns true if is a and has the same value. + To be added. + To be added. + + + Returns a value that is used for efficient storage and lookup of this object. + To be added. + To be added. + + + Exception indicating that the s specified cannot be simultaneously satisfied. + To be added. + + + A description for this exception. + Creates a new object with the explanatory message. + To be added. + + + An ImageSource that loads an image from a URI, caching the result. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets a structure that indicates the length of time after which the image cache becomes invalid. + To be added. + To be added. + + + Gets or sets a Boolean value that indicates whether caching is enabled on this object. + To be added. + To be added. + + + Gets or sets the URI for the image to get. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A that converts from a string or to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A WebViewSource bound to a URL. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the URL for this object. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for ValueChanged events. Provides both old and new values. + To be added. + + + To be added. + To be added. + Creates a new event with and . + To be added. + + + Gets the new value. + To be added. + To be added. + + + Gets the old value. + To be added. + To be added. + + + Struct defining X and Y double values. + To be added. + + + To be added. + To be added. + Creates a new that is defined by and . + To be added. + + + The horizontal coordinate. + To be added. + + + The vertical coordinate. + To be added. + + + A visual element that is used to place layouts and controls on the screen. + + The class is a base class for the class, and most of the controls that application developers will use. Nearly all UI elements that an application developer will use are derived from class. Because the class ultimately inherits from class, application developers can use the Model-View-ViewModel architecture, as well as XAML, to develop portable user interfaces. The remarks in the topic provide a discussion of MVVM and bound properties. + + + + Initializes a new instance of the View class. + It is unlikely that an application developer would want to create a new View instance on their own. + + + The collection of gesture recognizers associated with this view. + A List of . + + + Adding items to this collection will associate gesture events with this element. This is not nessesary for elements which natively support input, such as a Button. + + + This example creates a tap gesture recognizer and associates it with an image. When the image is double tapped, it will become semi-transparent. + + + image.Opacity = 0.5, + NumberOfTapsRequired = 2 + }; + image.GestureRecognizers.Add (gestureRecognizer); + ]]> + + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the HorizontalOptions modifies how the element is laid out when there is excess space available along the X axis from the parent layout. Additionally it specifies if the element should consume leftover space in the X axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the HorizontalOptions bindable property. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + Overriders must call the base method. + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the VerticalOptions modifies how the element is laid out when there is excess space available along the Y axis from the parent layout. Additionally it specifies if the element should consume leftover space in the Y axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the VerticalOptions bindable property. + + + + A containing a developer-defined . + + + + Initializes a new instance of the ViewCell class. + + + + Gets or sets the View representing the content of the ViewCell. + + + + + Extension methods for s, providing animatable scaling, rotation, and layout functions. + To be added. + + + To be added. + Aborts the TranslateTo, LayoutTo, RotateTo, ScaleTo, and FadeTo animations on element. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the fade that is described by the , , and parameters. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that eases the bounds of the that is specified by the to the rectangle that is specified by the parameter. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Rotates the that is specified by from its current rotation by . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by from its current scale to . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the rotation that is described by the , , and parameters.. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the Y axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the X axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by to the absolute scale factor . + To be added. + To be added. + + + The view to tanslate. + The x component of the final translation vector. + The y component of the final translation vector. + The duration of the animation in milliseconds. + The easing of the animation. + Animates an elements TranslationX and TranslationY properties from their current values to the new values. + To be added. + Translate to is particular useful for animations because it is applied post-layout. Translation animations will not conflict with managed layouts and thus are ideal for doing slide in/out style animations. + + + Deprecated. Do not use. + To be added. + + + Deprecated. Do not use. + + + Deprecated. Do not use. + + + Deprecated. Do not use.. + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + The base class for most Xamarin.Forms on-screen elements. Provides most properties, events, and methods for presenting an item on screen. + + + + Gets or sets the X component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the X component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorX bindable property. + To be added. + + + Gets or sets the Y component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the Y component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorY bindable property. + To be added. + + + Gets or sets the color which will fill the background of a VisualElement. This is a bindable property. + The color that is used to fill the background of a VisualElement. The default is . + To be added. + + + Identifies the BackgroundColor bindable property. + To be added. + + + Signals the start of a batch of changes to the elements properties. + Application authors will not generally need to batch updates manually as the animation framework will do this for them. + + + Signals the end of a batch of commands to the element and that those commands should now be committed. + This method merely ensures that updates sent during the batch have been committed. It does not ensure that they were not committed before calling this. + + + Gets the list of Behavior associated to this element. This is a bindable propery. + + + + + Identifies the Behaviors bindable property. + + + + Gets the bounds of the element. + The bounds of an element, in device-independent units. + Bounds is assigned during the Layout cycle by a call to . + + + + + Occurs when the Children of a VisualElement have been re-ordered. + + + + Attemps to set focus to this element. + + if the keyboard focus was set to this element; if the call to this method did not force a focus change. + Element must be able to receive focus for this to work. Calling Focus on offscreen or unrealized elements has undefined behavior. + + + Occurs when the element receives focus. + Focused event is raised whenever the VisualElement receives focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + + + The available width that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the element. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of your app. Overriding GetSizeRequest should only be done if you want to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + Gets the current rendered height of this element. This is a read-only bindable property. + The renderered height of this element. + The height of an element is set during the Layout phase. + + + Identifies the Height bindable property. + + + + Gets or sets the desired height override of this element. + The height this element desires to be. + HeightRequest does not immediately change the Bounds of a VisualElement, however setting the HeightRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the HeightRequest property. + To be added. + + + Gets or sets a value indicating whether this element should be involved in the user interaction cycle. This is a bindable property. + + if the element should be able to receive input; if element should not receive input and should pass inputs to the element below. Default is true. + Setting InputTransparent is not the same as setting IsEnabled to false. Setting InputTransparent only disables inputs and instead causes them to be passed to the VisualElement below the element. Usually this is the parent of the element. + + + + Identifies the InputTransparent bindable property. + + + + Method that is called to invalidate the layout of this . Raises the event. + To be added. + + + Gets or sets a value indicating whether this element is enabled in the user interface. This is a bindable property. + + if the element is enabled; otherwise, . The default value is + + + Elements that are not enabled do not participate in hit detection, and therefore will not receive focus or emit input events. + + + The following example shows a handler on a button which will then set IsEnabled to false on another button. + + + button2.IsEnabled = false; + } + } + ]]> + + + + + Identifies the InputTransparent bindable property. + + + + Gets a value indicating whether this element is focused currently. This is a bindable property. + + if the element is focused; otherwise, . + + + Applications may have multiple focuses depending on the implementation of the underlying toolkit. Menus and modals in particular may leave multiple items with focus. + + + The following example shows conditionally setting a background color based on the focus state. + + + + + + + + Identifies the IsFocused bindable property. + + + + Gets or sets a value that determines whether this elements should be part of the visual tree or not. This is a bindable property. + + if the element should be rendered; otherwise, . Default value is . + + Setting IsVisible to false will remove the element from the visual tree. The element will no longer take up space in layouts or be eligle to receive any kind of input event. + + The following example shows a stack where the middle element is toggled when a button is activated. + + + + + + + + Identifies the IsVisible bindable property. + + + + The new bounds of the element. + Updates the bounds of the element during the layout cycle. + Calling Layout will trigger a layout cycle for the sub-tree of this element. + + + Event that is raised when the layout of a visual element is invalidated. + To be added. + + + Gets or sets a value which overrides the minimum height the element will request during layout. + The minimum height the element requires. Default value is -1. + + + MinimumHeightRequest is used to override the results of a call to by setting the minimum height property. This causes overflow handling to shrink this element to its minimum height before elements who do not have a minimum size set. + + + The following example sets the MinimumHeightRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumHeightRequest property. + To be added. + + + Gets or sets a value which overrides the minimum width the element will request during layout. + The minimum width the element requires. Default value is -1. + + + MinimumWidthRequest is used to override the results of a call to by setting the minimum width property. This causes overflow handling to shrink this element to its minimum width before elements who do not have a minimum size set. + + + The following example sets the MinimumWidthRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumWidthRequest property. + To be added. + + + Gets the context aware navigation interface for the element. + An that allows for navigation using the ancestral navigation implementor. + + + Use the Navigation property to perform navigation from any element. If the element has not yet been added to a tree which contains a navigation implementor, the actions are queued up until it is. + + + The following example navigates to a new page created in the callback of a buttons event. + + + + + + + Identifies the Navigation bindable property. + + + + Invoked whenever the event is about to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + It is required to call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. Most layouts will want to implement this method in order to layout their children during a layout cycle. + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + A which contains the desired size of the element. + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the opacity value applied to the element when it is rendered. This is a bindable property. + The opacity value. Default opacity is 1.0. Values will be clamped between 0 and 1 on set. + + + The opacity value has no effect unless IsVisible is . Opacity is inherited down the element hierarchy. If a parent has 0.5 opacity, and a child has 0.5 opacity, the child will render with an effective 0.25 opacity. Setting opacity to 0 has undefined behavior with input elements. + + + The following example sets the opacity of a layout to 0.5 and the opacity of one of its children to 0.5, making the child 25% opaque. + + + + + + + + Identifies the Opacity bindable property. + + + + Gets or sets the local resource dictionary. + The current resource dictionary, where resources are stored by key. + + In XAML, resource dictionaries are filled with key/value pairs that are specified in XML and consequently created at run time. The keys in the resource dictionary are specified with the x:Key attribute of the XML tag for the type to create. An object of that type is created, and is initialized with the property and field values that are specified either by additional attributes or by nested tags, both of which, when present are simply string representations of the property or field names. The object is then inserted into the for the enclosing type at runtime. + + For example, the XAML below, taken from the XAML for Xamarin.Forms series, creates a resource dictionary that contains object constants that can be used for any objects that are added to the surrounding : + + + + + + + +]]> + Note that the above snippet is only valid when nested within a <ContentPage>...</ContentPage> tag pair. Within that pair, the app developer can use both of the horzOptions and vertOptions keys to specify values for properties of type by using the "{...}" static resource syntax. The short example below, also taken from the XAML for Xamarin.Forms series, illustrates this syntax: + ]]> + Resource dictionaries and their associated XML provide the application developer with a convenient method to reuse code inside the XAML compile-time and run-time engines. + + + + + Gets or sets the rotation about the Z-axis (affine rotation) when the element is rendered. + The rotation about the Z-axis in degrees. + Rotation is applied relative to and . + + + Identifies the Rotation bindable property. + + + + Gets or sets the rotation about the X-axis (perspective rotation) when the element is rendered. + The rotation about the X-axis in degrees. + RotationX is applied relative to and . + + + Identifies the RotationX bindable property. + + + + Gets or sets the rotation about the Y-axis (perspective rotation) when the element is rendered. + The rotation about the Y-axis in degrees. + RotationY is applied relative to and . + + + Identifies the RotationY bindable property. + + + + Gets or sets the scale factor applied to the element. + The scale factor of the element. Default value is 1.0. + Scale is applied relative to and . + + + Identifies the Scale bindable property. + + + + The newly allocated width. + The newly allocated height. + SizeAllocated is called during a layout cycle to signal the start of a sub-tree layout. + Calling SizeAllocated will start a new layout cycle on the children of the element. Excessive calls to SizeAllocated may cause performance problems. + + + Occurs when either the Width or the Height properties change value on this element. + Classes should implement if they wish to respond to size change events directly. + + + Gets or sets the style that defines how this visual element is displayed. + To be added. + To be added. + + + Backing store for the Style property. + To be added. + + + Gets or sets the X translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationX bindable property. + + + + Gets or sets the Y translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationY bindable property. + + + + Gets the list of Trigger associated to this element. This is a bindable property. + + + + + Identifies the Triggers bindable property. + + + + Unsets focus to this element. + Element must already have focus for this to have any effect. + + + Occurs when the element loses focus. + Unfocused event is raised whenever the VisualElement loses focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + Gets the current rendered width of this element. This is a read-only bindable property. + The renderered width of this element. + The width of an element is set during the Layout phase. + + + Identifies the Width bindable property. + + + + Gets or sets the desired width override of this element. + The width this element desires to be. + WidthRequest does not immediately change the Bounds of a VisualElement, however setting the WidthRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the WidthRequest property. + To be added. + + + Gets the current X position of this element. This is a read-only bindable property. + The X position of this element relative to its parents bounds. + The x value of an element is set during the Layout phase. + + + Invalidates the measure when the native size of the element changes. + To be added. + + + Identifies the X bindable property. + + + + Gets the current Y position of this element. This is a read-only bindable property. + The Y position of this element relative to its parents bounds. + The y value of an element is set during the Layout phase. + + + Identifies the Y bindable property. + + + + Class that contains arguments for the event that is raised after web navigation completes. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets a value that describes the result of the navigation. + To be added. + To be added. + + + Class that contains arguments for the event that is raised after web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether or not to cancel the navigation. + To be added. + To be added. + + + Contains values that indicate why a navigation event was raised. + To be added. + + + Indicates that the navigation resulted from the user going back to a previous page in the navigation history. + + + Indicates that the navigation resulted from the user going forward to a later page in the navigation history. + + + Indicates that the navigation was to a preiously unvisited page, according to the navigation history. + + + Indicates that the navigation resulted from a page refresh. + + + TClass that contains arguments for the event that is when web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets the navigation event that was raised. + To be added. + To be added. + + + Gets the element that performed the navigation. + To be added. + To be added. + + + The destination of the navigation. + To be added. + To be added. + + + Enumerates values that indicate the outcome of a web navigation. + To be added. + + + The navigation was cancelled. + + + The navigation failed. + + + The navigation succeeded. + + + The navigation timed out. + + + A that presents HTML content. + + The following example shows a basic use. + + + + + + + + + + Creates a new element with default values. + To be added. + + + Gets a value that indicates whether the user can navigate to previous pages. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Gets a value that indicates whether the user can navigate forward. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A script to evaluate. + Evaluates the script that is specified by . + To be added. + + + Navigates to the previous page. + To be added. + + + Navigates to the next page in the list of visited pages. + To be added. + + + Event that is raised after navigation completes. + To be added. + + + Event that is raised when navigation starts. + To be added. + + + To be added. + Method that is called when is changed. + To be added. + + + To be added. + To be added. + Method that is called when the view source that is specified by the parameter is changed. + To be added. + + + Gets or sets the object that represents the location that this object displays. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Abstract class whose subclasses provide the data for a . + To be added. + + + Creates a new object with default values. + To be added. + + + Method that is called when the source is changed. + To be added. + + + To be added. + Casts a string that contains a URL to a instance. + To be added. + To be added. + + + To be added. + Casts a object to a instance. + To be added. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Defines the interface for Xamarin.Forms XAML markup extensions. + + + Types implementing this interface can be used as custom XAML markup extension. + + + The following example shows declaration of a custom markup extension. + + + The markup extension can be used directly in XAML + + + + + To be added. + Returns the object created from the markup extension. + The object + + + + Interface that defines a target and property to which a value is provided. + To be added. + + + Gets the target object. + To be added. + To be added. + + + Gets an object that identifies the target property. + To be added. + To be added. + + + Interface that defines the ability to return a root object, for instance, the top-level in a layout. + To be added. + + + The root object. + To be added. + To be added. + + + Interface defining the ability to resolve a qualified type name into a Type. + To be added. + + + To be added. + Returns the resolved type. + To be added. + To be added. + + + To be added. + To be added. + Tries to resolve a type name, putting the type value in , and returns a Boolean value that indicates whether the operation succeeded. + To be added. + To be added. + + + Exception that is thrown when the XAML parser encounters an error. + To be added. + + + Information about the condition that caused the exception to be thrown. + To be added. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Platform.WP8.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Platform.WP8.dll new file mode 100644 index 0000000..2323deb Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Platform.WP8.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Xaml.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Xaml.dll new file mode 100644 index 0000000..6d49db3 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Xaml.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Xaml.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Xaml.xml new file mode 100644 index 0000000..3a50b08 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/WP80/Xamarin.Forms.Xaml.xml @@ -0,0 +1,137 @@ + + + Xamarin.Forms.Xaml + + + + Markup extension for parsing arrays. + To be added. + + + Creates a new with default values. + To be added. + + + Returns a list of the items in this . + To be added. + To be added. + + + To be added. + Returns an array that contains items of the type that is specified by the property. + To be added. + To be added. + + + Gets or sets the type of the items that can be stored in the array. + To be added. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + To be added. + + + To be added. + Internal. + To be added. + To be added. + + + Extension class for defining method. + To be added. + + + To be added. + To be added. + To be added. + Configures with the properties that are defined in the application manifest for . + To be added. + To be added. + + + Extension class that differentiates between null values and empty strings. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns the null object. + To be added. + To be added. + + + Markup extension for referring to other XAML-defined types. + To be added. + + + Creates a new with default values. + To be added. + + + Gets or sets the name of the entity to reference. + To be added. + To be added. + + + To be added. + Returns an object that represents the type that was referred to. + To be added. + To be added. + + + A markup extension that gets a static member value. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the member name. + To be added. + To be added. + + + To be added. + Returns the value of the member. + To be added. + To be added. + + + A markup extension for parsing type descriptors. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns an object that represents the type specified by the markup. + To be added. + To be added. + + + Gets or sets the name of the type. + To be added. + To be added. + + + Exception that is raised when the XAML parser encounters a XAML error. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Core.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Core.dll new file mode 100644 index 0000000..78dbe04 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Core.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Core.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Core.xml new file mode 100644 index 0000000..db18b55 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Core.xml @@ -0,0 +1,13626 @@ + + + Xamarin.Forms.Core + + + + Positions child elements at absolute positions. + + Application developers can control the placement of child elements by providing proportional coordinates, device coordinates, or a combination of both, depending on the values that are passed to method. When one of the proportional enumeration values is provided, the corresponding X, or Y arguments that range between 0.0 and 1.0 will always cause the child to be displayed completely on screen. That is, you do not need to subtract or add the height or width of a child in order to display it flush with the left, right, top, or bottom of the . For width, height, X, or Y values that are not specified proportionally, application developers use device-dependent units to locate and size the child element. + + The following example shows how to use an with proportional position arguments. + + The code sample below shows how to place two labels by specifying device-dependent units. + + + The following image shows the AbsoluteLayout demo from the FormsGallery sample. + + + + + + The class has the following XAML attached properties: + + + Attached Property + Value + + + AbsoluteLayout.LayoutBounds + + A comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + AbsoluteLayout.LayoutFlags + + + enumeration value names: All, None, HeightProportional, WidthProportional, SizeProportional, XProportional, YProportional, or PositionProportional. Application developers can combine any of these flags together by supplying a comma-separated list. + + + + Application developers can use XAML to lay out elements with the class. The example below places a blue inside an : + + + +]]> + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Initializes a new instance of the AbsoluteLayout class. + To be added. + + + A value that indicates that the width or height of the child should be sized to that childs native size. + + + Application developers can set the width or height of the property to on a visual element when adding to the layout to cause that element to be measured during the layout pass and sized appropriately. + + + + Gets the collection of child elements of the AbsoluteLayout. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the AbsoluteLayout class. + + + + A visual element. + Gets the layout bounds of . + The layout bounds of the object. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + A visual element. + Gets the layout flags that were specified when was added to an . + The layout flags of the object. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. + + + + Implements the attached property that represents the layout bounds of child elements. Bindable at run time with the string "LayoutBounds". See Remarks. + The interface for this property is defined by the and methods. + + + + The X coordinate of the region that contains the child elements and that is used to calulate proportional values. + The Y coordinate of the region that contains the child elements and that is used to calulate proportional values. + The width of the the region that contains the child elements and that is used to calulate proportional values. + The height of the region that contains the child elements and that is used to calulate proportional values. + Positions and sizes the children of an AbsoluteLayout. + + Application developers can override to change the default behavior of . When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + Implements the attached property that contains the values for child elements. + The interface for this property is defined by the and methods. + + + + The element that was added to the children. + Called when a child is added to the . + + Application developers can override to change the default behavior thata is triggered when a child is added. When doing so, it is recommended to call the base method and then add additional logic. + + + + The element that was removed from the children. + Called when a child is removed from the . + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then add additional logic. + + + + The available width for the AbsoluteLayout to use. + The available height for the AbsoluteLayout to use. + Called during the measure pass of a layout cycle to get the desired size of the AbsoluteLayout. + A which contains the desired size of the AbsoluteLayout. + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + The view to delimit by . + A rectangle that represents the desired size and shape of . + Sets the layout bounds of a view that will be used to size it when it is layed out. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. Application developers can call this method to update the layout of a view after it is added. + + + + The view on which to set the layout flags. + A that describes the how to interpret the layout bounds for . + Sets the layout flags of a view that will be used to interpret the layout bounds set on it when it is added to the layout. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. Application developers can call this method to update the layout flags of a view after it is added. + + + + The type of elements in the absolute layout. + List interface with overloads for adding elements to an absolute layout. + + + + The view to add. + The location at which to position the view. + Adds a view to the list at the specified location with automatic sizing. + + + + The view to add. + The bounds to layout the view with. + The flags to interpret bounds with. + Adds a view to the list with the specified bounds and flags. + + + + Flags used to modify how layout bounds are interpreted in an . + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Interpret all dimensions proportionally. + + + Interpret height property as proportional to layout height. + + + Disable all flags. + + + Equivalent to both XProportional | YProportional. + + + Equivalent to both WidthProportional | HeightProportional. + + + Interpret width property as proportional to layout width. + + + Interpret x property as proportional to the remaining space after width is accounted for. + + + Interpret y property as proportional to the remaining space after height is accounted for. + + + A visual control used to indicate that something is ongoing. + + This control gives a visual clue to the user that something is happening, without information about its progress. + + + + The class has the following XAML properties: + + + Property + Value + + + Color + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + IsRunning + + + or , to indicate whether the animation for is displayed. + + + + + The example below creates a red activity indicator that is animated to imply that an activity is ongoing: + ]]> + + + + + Initializes a new instance of the ActivityIndicator class. + + The following example shows the initialization of a running ActivityIndicator. + + + + + + + + Gets or sets the of the ActivityIndicator. This is a bindable property. + A used to display the ActivityIndicator. Default is . + + + + Identifies the Color bindable property. + + + + Gets or sets the value indicating if the ActivityIndicator is running. This is a bindable property. + A indicating if the ActivityIndicator is running. + + + + Identifies the Color bindable property. + + + + Encapsulates an animation, a collection of functions that modify properties over a user-perceptible time period. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Runs the animation with the supplied parameters. + To be added. + + + Returns a callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + A callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + To be added. + + + Returns an enumerator that can be used to iterate over the child objects of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds to the children of this object and sets the start and end times of to and , respectively. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters, and adds it to the children of this object. + To be added. + To be added. + + + Extension methods for . + To be added. + + + To be added. + To be added. + Stops the animation. + To be added. + If refers to an animation that belongs to this instance, then its tweener handlers are removed, the tweener is stopped, the animation is removed from this instance, and it is marked as finished. If refers to one of the kinetics that belong to this instance, then it and its ticker are removed. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the kinetic animation. + To be added. + + + To be added. + To be added. + Returns a Boolean value that indicates whether or not the animation that is specified by is running. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a function that performs a linear interpolation between and . + A function that performs a linear interpolation between and . Application developers can pass values between 0.0f and 1.0f to this function in order to recieve a value that is offset from or , depending on the value of , by the passed value times the distance between and . + If is , then the interpolation happens between and . + + + Class that represents a cross-platform mobile application. + To be added. + + + Initializes a new instance. + To be added. + + + Gets the current application. + To be added. + To be added. + + + Gets or sets the main page of the application. + To be added. + This property throws an exception if the application developer attempts to set it to . + + + Throws . + To be added. + + + Application developers override this method to perform actions when the application resumes from a sleeping state. + To be added. + + + Application developers override this method to perform actions when the application enters the sleeping state. + To be added. + + + Application developers override this method to perform actions when the application starts. + To be added. + + + Gets the dictionary of properties for this object. + To be added. + To be added. + + + Gets or sets the resource dictionary for this object. + To be added. + To be added. + + + Defines how an image is displayed. + + + + Scale the image to fill the view. Some parts may be clipped in order to fill the view. + + + + Scale the image to fit the view. Some parts may be left empty (letter boxing). + + + Scale the image so it exactly fill the view. Scaling may not be uniform in X and Y. + + + Contains arguments for the event that is raised when a back button is pressed. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the back button event has already been handled. + To be added. + To be added. + + + Base class for menu items. + To be added. + + + Intializes a new instance. + To be added. + + + Base class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize the generic class, instead of directly using . + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + To be added. + + + To be added. + Detaches from . Calls the method. + To be added. + + + The type of the objects with which this can be associated. + Base generic class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize this generic class, instead of directly using . + + + Creates a new instance. + + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + Provides a mechanism by which application developers can propagate changes that are made to data in one object to another, by enabling validation, type coercion, and an event system. . + + The class provides a data storage mechanism that enables the application developer to synchronize data between objects in response to changes, for example, between the View and View Model in the MVVM design pattern. All of the visual elements in the namespace inherit from class, so they can all be used to bind the data behind their user interface elements to View Models that are supplied by the application developer. + + To bind the data behind a property in a , typically a view, to a property in the View Model, application developers should do the following. + First, the developer creates a pair of properties on the view, one of which is a , and the other of which is a property of whatever type is required. In the code below, MockBindableObject stands in for what would typically be a user interface object in production code. Application developers should note the use of and to get and set the value on the bound property; The property of the desired type provides the interface that the target of the bound property will implement. + ( + // o => o.Foo, default (string) + // ); + + public string BoundName + { + get { return (string) GetValue (BoundNameProperty); } + set { SetValue (BoundNameProperty, value); } + } +} + ]]> + Second, the developer creates the implementation for the bound property in a class that implements the interface. In the MVVM design pattern, this is typically done by the View Model. Application developers should implement the interface on classes that they want to use as View Models. In the example below, app developers should take note of the idiomatic way that the Name property is implemented to, first, ensure that the property actually changed and return if it did not, and only then assign the value and call the method. Additionally, the Name property in the example below merely wraps the name field. In practice, the application developer may choose a different model in which to store application data. + + Third, and finally, the application developer binds an instance of a BindableObject to an instance that implements INotifyPropertyChanged. In the vocabulary of the MVVM design pattern, this is "binding an instance of the View to an instance of a View Model." Once this step is complete, changes in the data are propagated between the View and View Model in a way that is determined by the value of the enumeration, if any, that was passed during the binding step. + The code below, when included in a project that reference the classes above, creates an instance of both MockBindable and MockViewModel, performs some intitialization, sets the binding, and then demonstrates a one-way binding. The code below runs without throwing an exception. + + + + + + Initializes a new instance of the BindableObject class. + The class is abstract, and this constructor is protected. It is invoked by child constructors. + + + The object that contains the properties that will be targeted by the bound properties that belong to this . This parameter is optional. + Apply the bindings to this. + + If an object is passed for the argument, bindings are first unapplied from . This method removes any current bindings from the old context, and applies every binding to the current . Application developers could use this method to bind the UI from a new View to an existing ViewModel, while optionally removing the bindings from the old View. Application developers can omit the argument in order to leave the old bindings in place. + + + + Gets or sets object that contains the properties that will be targeted by the bound properties that belong to this . + An that contains the properties that will be targeted by the bound properties that belong to this . This is a bindable property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to apply a BindingContext and a Binding to a Label (inherits from BindableObject): + + + + + + + Raised whenever the property changes. + + + + Implements the bound property whose interface is provided by the property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to set a binding to the BindingContext: + + + + + + + The BindableProperty to clear. + Clears any value set by for . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindablePropertyKey that identifies the to clear. + Clears any value set by for the property that is identified by . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindableProperty for which to get the value. + Returns the value that is contained the BindableProperty. + The value that is contained the . + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + Override this method to execute an action when the BindingContext changes. + + + + The name of the property that changed. + Call this method from a child class to notify that a change happened on a property. + + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + + The name of the property that is changing. + Call this method from a child class to notify that a change is going to happen on a property. + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + Raised when a property has changed. + + + + Raised when a property is about to change. + + + + The BindableProperty from which to remove bindings. + Removes a previously set binding. + + This method succeeds even if is not bound. + + + + The BindableProperty on which to set a binding. + The binding to set. + Assigns a binding to a property. + + The following example shows how to set a binding to a property: + + + + + + + The object on which to set the inherited binding context. + The inherited context to set. + Sets the inherited context to a nested element. + + + + The BindableProperty on which to assign a value. + The value to set. + Sets the value of the specified property. + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + The BindablePropertyKey on which to assign a value. + The value to set. + Sets the value of the propertyKey. + + This method and are useful to implement BindableProperties with limited write access. The write access is limited to the scope of the BindablePropertyKey. + The following example shows how to declare a BindableProperty with "internal" write access. + + (w => w.My, default(string)); + public static readonly BindableProperty MyProperty = MyPropertyKey.BindableProperty; + + public string My { + get { return (string)GetValue (MyProperty); } + internal set { SetValue (MyPropertyKey, value); } + } +} + ]]> + + + + + Unapply all the bindings. + + This method removes all current bindings from the current context. + Changing a bound property requires that the binding count for a bound property must be 0. The method merely decrements the cound, and does not remove all bindings everywhere. + + + + Contains convenience extension methods for . + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + The for the binding. This parameter is optional. Default is . + An for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The source type. + The BindableObject. + The BindableProperty to bind to + An expression used to retrieve the source path. + The BindingMode for the binding. This parameter is optional. Default is . + An IValueConverter for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding from an expression. + + This extension method uses Expression instead of path to creates and sets bindings. Using Expressions is more refactoring friendly. + This following example illustrates the setting of a binding using the extension method. + + (Label.TextProperty, vm => vm.Name); +label.BindingContext = new PersonViewModel { + Name = "John Doe", + Company = "Xamarin" +}; +Debug.WriteLine (label.Text); //prints "John Doe" + ]]> + + + + + A BindableProperty is a backing store for properties allowing bindings on . + + The following example shows the creation of a BindableProperty as a backing store for a property. It shows also how to bind to that BindableProperty. + + (w => w.Foo, default(string)); + + public string Foo { + get { return (string)GetValue (FooProperty); } + set { SetValue (FooProperty, value); } + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MockBindable.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (bindable.Foo); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + To be added. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the type declaring the BindableProperty + + Unused + + + Gets the default BindingMode. + + + + + Gets the default value for the BindableProperty. + + + + + Gets the Func used as default value creator. + + + + + Gets a value indicating if the BindableProperty is created form a BindablePropertyKey. + + + + + Gets the property name. + + + + + Gets the type of the BindableProperty. + + + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + Strongly typed delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + The secret key to a BindableProperty, used to implement a BindableProperty with restricted write access. + + The following example shows the creation of a BindablePropertyKey. Write access is while read access is . + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the BindableProperty. + A BindableProperty used for read access. + + + + A single 1:1 immutable data binding. + This class is immutable. + + + Constructs and initializes a new instance of the class. + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + An object used as the source for this binding. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + Gets or sets the converter to be used for this binding ? + An IValueConverter, or . + + + + Gets or sets the parameter passed as argument to the converter. + An object, or . + + + + The type of the source of the binding. + An expression used to retrieve the binding path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + This is a convenient factory method to create a binding from an expression, instead of a property name. This api is more resilient to refactoring. + A newly created binding. + + The following example shows how to set a binding to a property : + + (vm => vm.Name)); +Debug.WriteLine (label.Text); //prints "John Doe". + ]]> + + + + + Gets or sets the path of the property + A string indicating the path to the property. + + + + Gets or sets the source of the binding. + An object used as the binding source. + If the Source is not null, the BindingContext is ignored, and the Source is used instead. This allows to set a source for a single Binding, and not for all the Bindings applied to the BindableObject. + + + An abstract class that provides a and a formatting option. + To be added. + + + To be added. + Stops synchronization on the . + To be added. + + + To be added. + To be added. + To be added. + Starts synchronization on the by using and . + To be added. + + + Gets or sets the mode for this binding. + To be added. + To be added. + + + Gets or sets the string format for this binding. + + A string specifying the format for the value of this binding. + + + + Used for providing a display format for the binding value or compositing the value with other + text. Implementors of decide how the string format is utilized, but + all support standard conventions. + + + allows for one argument for its singular value. + + + + A simple example showing compositing text and determining the display format for the value with a + + + + + + + + Throws an if the binding has been applied. + + Use this method in property setters as bindings can not be changed once applied. + + + + Class that represents a value comparison with the target of an arbitrary binding. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets the binding against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Used by XAML infrastructure. + To be added. + To be added. + + + The direction of changes propagation for bindings. + + The following examples shows some BindingMode use cases. + + (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 (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 (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" + ]]> + + + + + When used in Bindings, indicates that the Binding should use the . When used in BindableProperty declaration, defaults to BindingMode.OneWay. + + + 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. + + + 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. + + + Indicates that the binding should propagates changes from source (usually the View Model) to target (the BindableObject) in both directions. + + + Type converter that converts from source types to + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert to . + To be added. + To be added. + + + To be added. + To be added. + Converts to by using . + To be added. + To be added. + + + A bounds layout constraint used by s. + To be added. + + + To be added. + To be added. + Returns a object that contains the compiled version of and is relative to either or the views referred to in . + To be added. + To be added. + + + A that converts strings into s for use with s. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A used to draw a solid colored rectangle. + + BoxView is a useful stand-in for images or custom elements when doing initial prototyping. BoxView has a default size request of 40x40. If you need a different size, assign the and properties. + The class has the following XAML properties: + PropertyValueColorA color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + The example below creates a red with the default width and height. + ]]> + + The following example shows a basic use: + + + + + + + + + + Initializes a new instance of the BoxView class. + + + + Gets or sets the color which will fill the rectangle. This is a bindable property. + The color that is used to fill the rectangle. The default is . + + + + Identifies the Color bindable property. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + + + A button that reacts to touch events. + + + The following example shows a basic use: + + + + + + + + + Initializes a new instance of the Button class. + + + + Gets or sets a color that describes the border stroke color of the button. This is a bindable property. + The color that is used as the border stroke color; the default is . + This property has no effect if is set to 0. On Android this property will not have an effect unless is set to a non-default color. + + + Backing store for the BorderColor bindable property. + + + + Gets or sets the corner radius of the border. This is a bindable property. + The corner radius of the button border; the default is 5. + + + + Backing store for the BorderRadius bindable property. + + + + Gets or sets the width of the border. This is a bindable property. + The width of the button border; the default is 0. + Set this value to a non-zero value in order to have a visible border. + + + Backing store for the BorderWidth bindable property. + + + + Occurs when the Button is clicked. + The user may be able to raise the clicked event using accessibility or keyboard controls when the Button has focus. + + + Gets or sets the command to invoke when the button is activated. This is a bindable property. + A command to invoke when the butto is activated. The default value is . + This property is used to associate a command with an instance of a button. This property is most often set in the MVVM pattern to bind callbacks back into the ViewModel. is controlled by the Command if set. + + + Gets or sets the parameter to pass to the Command property. This is a bindable property. + A object to pass to the command property. The default value is . + + + + Backing store for the CommandParameter bindable property. + + + + Backing store for the Command bindable property. + + + + Gets or sets the Font for the Label text. This is a bindable property. + The value for the button. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the button text is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the button text belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets or sets the size of the font of the button text. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the optional image source to display next to the text in the Button. This is a bindable property. + To be added. + To be added. + + + Backing store for the Image bindable property. + + + + Overriden + + + + The name of the changed property. + Call this method from a child class to notify that a change happened on a property. + A Button triggers this by itself. An inheritor only need to call this for properties without BindableProperty as backend store. + + + Gets or sets the Text displayed as the content of the button. This is a bindable property. + The text displayed in the button. The default value is . + Changing the Text of a button will trigger a layout cycle. + + + Gets or sets the for the text of the button. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Sends a click event. + To be added. + + + A Page that users can swipe from side to side to display pages of content, like a gallery. + + The provides a navigation experience that will feel natural and familiar to Windows Phone users. By using , application developers can provide customized navigation on a per-platform basis. For example, an application developer could use a for Android and iOS, and use a on Windows Phone. + + The following XAML example, when properly included and referenced in a Xamarin.Forms project, creates a that displays three simple elements: + + + + + + + + + + + + + + + +]]> + + + The following C# example creates a that displays three simple elements: + pages = new List (0); +Color[] colors = { Color.Red, Color.Green, Color.Blue }; +foreach (Color c in colors) { + pages.Add (new ContentPage { Content = new StackLayout { + Children = { + new Label { Text = c.ToString () }, + new BoxView { + Color = c, + VerticalOptions = LayoutOptions.FillAndExpand + } + } + } + }); +} + +MainPage = new CarouselPage { + Children = { pages [0], + pages [1], + pages [2] } +}; +]]> + + When embedding a CarouselPage into a , application developers should set to to prevent gesture conflicts between the CarouselPage and MasterDetailPage. + + + + + + + Initializes a new instance of the CarouselPage class. + + + + The object representing the model ofr the page. + Creates a default page, suitable for display in this, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Provides base class and capabilities for all Forms cells. Cells are elements meant to be added to or . + + The subtypes of are: + + + Type + Description + + + EntryCell + A with a label and a single line text entry field. + + + SwitchCell + A with a label and an on/off switch. + + + TextCell + A with primary and secondary text. + + + ImageCell + A that also includes an image. + + + ViewCell + A containing a developer-defined . + + + The various subclasses are shown in the following image: + + + + + + + The class has the following XAML properties: + + + Property + Value + + + ContextActions + + A list of objects to display when the user performs the context action. + + + + IsEnabled + + + or , indicating whether the animation for is displayed. + + + + + + + Initializes a new instance of the Cell class. + Cell class is abstract, this constructor is never invoked directly. + + + Occurs when the visual representation of the Cell is being added to the visual layout. + This method is raised before the cell is on screen. + + + Gets a list of menu items to display when the user performs the device-specific context gesture on the Cell. + The list of menu items that will be displayed when the user performs the device-specific context gesture on the Cell. + The context gesture on the iOS platform is a left swipe. For Android and Windows Phone operating systems, the context gesture is a press and hold. + + + Occurs when the visual representation of the Cell is being removed from the visual layout. + This method is for virtualization usage only. It is not gauranteed to fire for all visible Cells when the ListView or TableView is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Gets a value that indicates whether the cell has at least one menu item in its list property. + To be added. + To be added. + + + Gets or sets the height of the Cell. + A double that represents the height of the cell. + The property is ignored if the app developer sets the or property on the surrounding to . In that case, the or property is used instead. + + + Gets or sets the IsEnabled state of the Cell. This is a bindable property. + A bool. Default is . + + + + Identifies the IsEnabled bindable property. + + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Event that is raised when the binding context is changed. + To be added. + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Invoked whenever a long press is applied to the Cell. + + + + Invoked whenever the Cell is Tapped. + + + + Gets the height of the rendered cell on the device. + + + + + Occurs when the Cell is Tapped. + + + + To be added. + To be added. + To be added. + To be added. + Delegate for callback in . + To be added. + + + Class that represents a color and exposes it as RGBA and HSL values. + + This type is immutable. Colors can be expressed in the RGB or HSL modes. While the constructor takes R, G, B, and A values, the class also calculates and makes available HSL data for the color. + + In XAML, application developers can specify any property that is of type , for example, either as a XAML attribute or as a nested tag. The following code example shows how to specify the text color for a label by using an attribute: + + Hello, World! +]]> + The example below shows how to specify the text color for a label by using a nested tag: + + Hello, World! + Color.Blue +]]> + + Application developers can specify colors in XAML either as a hexadecimal number or as a valid color name. + When specifying a color with a hexadecimal number, app developers can use 3, 4, or 6 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". Finally, if the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". + When specifying a color with a string, app developers can use color name in isolation, or prefix it with "Color.". For example, both Purple and Color.Purple are valid ways to specify the color purple. The following table describes the valid color names that can be used to specify colors in XAML. +ColorShort NameRGB ValueColor.TransparentTransparent0, 0, 0 (With the alpha channel set to 0.)Color.AquaAqua0, 255, 255Color.BlackBlack0, 0, 0Color.BlueBlue0, 0, 255Color.FuchsiaFuchsia255, 0, 255Color.GrayGray128, 128, 128Color.GreenGreen0, 128, 0Color.LimeLime0, 255, 0Color.MaroonMaroon128, 0, 0Color.NavyNavy0, 0, 128Color.OliveOlive128, 128, 0Color.PurplePurple128, 0, 128Color.PinkPink255, 102, 255Color.RedRed255, 0, 0Color.SilverSilver192, 192, 192Color.TealTeal0, 128, 128Color.WhiteWhite255, 255, 255Color.YellowYellow255, 255, 0 + + + + The luminosity of the gray-scale color. + Initialize a new gray color. + This is equivalent to new Color (value, value, value). The value is clamped to [0-1]. App developers should use the equivalent methods, instead. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Initializes a new RGB color. + This is equivalent to new Color (r, g, b, 1). Values are clamped to [0-1]. Prefer the equivalent methods. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Initializes a new RGB color with an alpha channel. + Values are clamped to [0-1]. + + + Gets the alpha component of the color. + The Alpha component of the color as a double that is in the inclusive range [0-1]. + + + + Gets the accent or tint color from the application. + A Color. + The accent color is platform and device dependent. + + + The delta (positive or negative) to add to the luminosity channel. + Returns a new Color with a modified luminosity channel. + A new color with a possibly modified luminosity channel. + The parameter is added to the current luminosity, and the resulting luminosity is then clamped to the inclusive range [0,1]. + + + Aqua, the color that is represented by the RGB value #00ffff. + + + + Gets the blue component of the color. + The Blue component of the color as a double that is in the inclusive range [0-1]. + + + + Black, the color that is represented by the RGB value #000000. + + + + Blue, the color that is represented by the RGB value #0000ff. + + + + Returns the default color. + The default color. + The Default color is used to unset any Color, and revert to the default one. + + + The value to compare to this structure. + Determine if the provided is equivalent to the current Color. + + if the provided object is an equivalent Color. Otherwies, . + Overriden. + + + A string that contains the hexadecimal (A)RGB color representation. + Returns a new RGB Color instance with the requested Red, Green, and Blue channels. The Alpha channel is set if contains one. + A color. + + When specifying a color with a hexadecimal number, app developers can use 3, 4, 6, or 8 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". If the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". Finally, the developer can explicitly provide an 8-digit number that completely specifies the Alpha, Red, Green, and Blue channels, in that order. + Note that, in the paragraph above, the fully expanded color description is of the format, AARRGGBB. That is: the first pair of hexadecimal digits specifies the Alpha channel; the second pair specifies the Red channel; the third pair specifies the Green channel; and the final pair specifies the Blue channel. + + + + The Hue component of the color. + The Saturation component of the color. + The Luminosity component of the color. + The alpha value of the color. + Returns a new HSL Color with an alpha channel + An HSL color + + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + An RGB color + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + A new RGB color. + Component values are clamped to [0,255]. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b, a), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,255]. + + + A uint that represents the ARGB value of the color. + Returns a new Color with the requested RGBA value. + An RGBA color. + + The parameter must represent an unsigned integer that can be represented by hexadecimal string that matches the format "AARRGGBB". + + + + Fucshia, the color that is represented by the RGB value #ff00ff. + + + + Fucshia, the color that is represented by the RGB value #ff00ff. Deprecated. See Remarks. + Use the color, instead. + + + Gets the Green component of the color. + The Green component of the color as a double that is in the inclusive range [0-1]. + + + + Returns the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gray, the color that is represented by the RGB value #808080. + + + + Green, the color that is represented by the RGB value #008000. + + + + Gets the Hue of the color. + The Hue component of the color as a double that is in the inclusive range [0-1]. + + + + Lime, the color that is represented by the RGB value #00ff00. + + + + Gets the Luminosity fo the color. + The Luminosity component of the color as a double that is in the inclusive range [0-1]. + + + + Maroon, the color that is represented by the RGB value #800000. + + + + The alpha multiplicator. + Returns a new color with the alpha channel multiplied by alpha, clamped to the inclusive range [0-1]. + A new RGBA color with a possibly new value for its alpha channel. See Remarks. + The resulting color has its alpha channel clamped toto the inclusive range [0-1], preventing invalid colors. + + + Navy, the color that is represented by the RGB value #000080. + + + + Olive, the color that is represented by the RGB value #808000. + + + + To be added. + To be added. + Returns if represents the same color as . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same color as . + To be added. + To be added. + + + Pink, the color that is represented by the RGB value #ff66ff. + + + + Purple, the color that is represented by the RGB value #800080. + + + + Gets the Red component of the color. + The Red component of the color as a double that is in the inclusive range [0-1]. + + + + Red, the color that is represented by the RGB value #ff0000. + + + + Gets the Saturation of the color + The Saturation component of the color as a double that is in the inclusive range [0-1]. + + + + Silver, the color that is represented by the RGB value #c0c0c0. + + + + Teal, the color that is represented by the RGB value #008080. + + + + Returns a string representation of the Color. + A string. + Overriden. + + + The transparent color, represented by the RGB value #00000000. + The Alpha channel of the color is set to 0. + + + White, the color that is represented by the RGB value #ffffff. + + + + The modified Hue. + Returns a color with modified Hue, but keeping the same Saturation and Luminosity. + A color. + The Hue is clamped to the inclusive range [0,1]. This method is useful for creating color palettes. + + + The modified luminosity. + Returns a color with modified Luminosity. + A new HSL color. + The new Luminosity is clamped to [0,1]. This method is useful for creating color palettes. + + + The modified Saturation. + Returns a new color with modified Saturation. + A new HSLcolor. + The Saturation is clamped to [0,1]. This method is useful for creating color palettes. + + + Yellow, the color that is represented by the RGB value #ffff00.. + + + + A that converts from strings to a . + + The following example shows some variations of : + + + + + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + An that defines properties for a column in a . + + The class has the following XAML property: + + + Property + Value + + + Width + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute width. + + + + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Event that is raised when the size of the column is changed. + To be added. + + + Gets or sets the width of the column. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A for s. + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + + +]]> + + + + + Creates a new empty collection. + To be added. + + + Defines an implementation wrapping an . + + + The following example creates a new Command and set it to a button. + + + Debug.WriteLine ("Command executed")); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, +}; +]]> + + + More useful scenarios takes a parameter + + + Debug.WriteLine ("Command executed: {0}", o)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action<object> to execute when the Command is executed. + Initializes a new instance of the Command class. + The Action will be executed with a parameter. + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An Action<object> to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An used as parameter to determine if the Command can be executed. + Returns a indicating if the Command can be exectued with the given parameter. + + if the Command can be executed, otherwise. + + If no canExecute parameter was passed to the Command constructor, this method always returns . + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + Occurs when the target of the Command should reevaluate whether or not the Command can be executed. + + + + Send a + + + + An used as parameter for the execute Action. + Invokes the execute Action + + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + The Type of the parameter, + Defines an implementation wrapping a generic Action<T>. + + + The following example creates a new Command and set it to a button. + + + (s => Debug.WriteLine ("Command executed: {0}", s)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + + + + Base class for conditions. + To be added. + + + A layout constraint used by s. + To be added. + + + To be added. + Returns a object that constrains an element to . + To be added. + To be added. + + + To be added. + Returns a that is calculated from . + To be added. + To be added. + + + To be added. + Returns a object that constrains an element relative to its parent's size. + To be added. + To be added. + + + To be added. + To be added. + Returns a object that constrains an element relative to the parameter. + To be added. + To be added. + + + Defines a constraint relationship. + + The class has the following XAML properties: + + + Property + Value + + + Constant + + An optionally signed integer literal. + + + + ElementName + + The name of a source element against which to calculate the constraint. + + + + Factor + + A decimal literal in the range (0,1]. + + + + Property + + The name of the property on the source element to use in the constraint calculation. + + + + Type + + + Constant, RelativeToParent, or RelativeToView. + + + + + + + Creates a new with default values. + To be added. + + + Gets or sets the constant constraint value.. + To be added. + To be added. + + + Gets or sets the name of a source element against which to calculate the constraint. + To be added. + To be added. + + + Gets or sets the factor by which to scale a constrained dimension, relative to the source element. + To be added. + To be added. + + + Gets or sets name of the property on the source element to use in the constraint calculation. + To be added. + To be added. + + + To be added. + Returns a for this . + To be added. + To be added. + + + Gets or sets the constraint type. + To be added. + To be added. + + + Enumeration specifying whether a constraint is constant, relative to a view, or relative to its parent. + To be added. + + + A constant constraint. + + + A constraint that is relative to a parent element. + + + A constraint that is relative to a view. + + + A that converts from strings to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that displays a single view. + + This is a Page displaying a single View, often a container like a or . + + The example below is taken from he App.cs file that is contained in the default "Hello, Forms!" app. It uses a to display a label, which is a typical, though basic, use of the class. + + The FormsGallery sample, which can be found on the Sample Applications page, has a ContentPageDemoPage.cs file. This file contains a longer and more complicated example. + The class has the following XAML property: + + + + Property + Value + + + Content + + A list of objects that represent the visual content of the . This tag can be omitted, and the contents listed directly. + + + A ContentPage tag can be the root element of a XAML document. + + + + + + Initializes a new ContentPage instance. + + + + Gets or Sets the View element representing the content of the Page. + A subclass, or . + + + + Indicates the property of the type that is the (default) content property. + + XAML processor uses to determine the content property. + +Decorating types with ContentPropertyAttribute allows shorter XAML syntax. As + + has a ContentProperty attribute applied, this XAML is valid: + + +This is equivalent to the following, more explicit XAML + + + + + ]]> + + + + The name of the property. + Initializes a new instance of the ContentPropertyAttribute class. + + + + Gets the name of the content property + A string representing the name of the content property. + + + + An element that contains a single child element. + + The class has the following XAML property: + + + Property + Value + + + Content + + The object that represents the visual content of the . + + + + + The following example shows how to construct a new ContentView with a Label inside. + + + + + + + + + + + Initializes a new instance fo the ContentView class. + + + + Gets or sets the content of the ContentView. + A used as content. + + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + Positions and sizes the content of a ContentView. + + + + The available width for the ContentView to use + The available height for the ContentView to use. + This method is called during the measure pass of a layout cycle to get the desired size of the ContentView. + A which contains the desired size of the StackLayout. + The results of this method will be the desired size of its content. + + + A template for multiple bindings, commonly used by s, s, and s. + In XAML, application developers can nest markup inside a DataTemplate tag to create a whose members are bound to the properties of data objects that are contained in a list. + + + A custom content generator to be called + Creates and initializes a new instance of the class. + To be added. + + + To be added. + Creates a new for type . + To be added. + + + Gets a dictionary of bindings, indexed by the bound properties. + To be added. + To be added. + + + Loads the template for the type that is represented by this and sets all of the bindings and values. + To be added. + To be added. + + + To be added. + To be added. + Sets the binding for . + To be added. + + + To be added. + To be added. + Sets the value of . + To be added. + + + Returns a dictionary of property values for this , indexed by property. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + Gets or sets the parent element of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + + + + + + + + + Class that represents a binding condition and a list of objects that will be applied when the condition is met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Value + + The value of the property that will trigger the setters in Setters. + + + + Setters + + A list of setters that are called when the property condition is met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the binding whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the binding that is named by the property becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the binding, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + XAML infrastructure. + To be added. + To be added. + + + Event arguments for event. + To be added. + + + To be added. + To be added. + Creates a new object that represents a change from to . + To be added. + + + The date that the user entered. + To be added. + To be added. + + + The date that was on the element at the time that the user selected it. + To be added. + To be added. + + + A that allows date picking. + + The visual representation of a DatePicker is very similar to the one of , except that a special control for picking a date appears in place of a keyboard. + + + + The following example shows a basic use: + + + + The class has the following XAML properties: + + + Property + Value + + + Format + + A string that specifies the display format in the control of the chosen date. + + + + Date + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MinimumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MaximumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + + The example below creates a working that displays the current date and allows the user to select a date between the specified ranges. The value for the property is specified with the x:Static markup extension, and the and properties are specified by calling the method with the x:FactoryMethod and x:Arguments tags. The example below requires a namespace declaration in the root ContentPage or ContentView tags. In particular, xmlns:sys="clr-namespace:System;assembly=mscorlib" must appear in the attribute list for the root element, so that the XAML parser can resolve the name, sys:DateTime. + + + yyyy-MM-dd + + + + Jan 1 2000 + + + + + + + Dec 31 2050 + + + + + ]]> + + + + + Initializes a new instance of the DatePicker class. + + + + Gets or sets the displayed date. This is a bindable property. + The displayed in the DatePicker. + + + + Identifies the Date bindable property. + + + + An event fired when the Date property changes. + + + + The format of the date to display to the user. This is a dependency property. + A valid date format. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format dependency property. + + + + The highest date selectable for this DatePicker. This is a bindable property. + The maximum selectable for the DateEntry. Default December 31, 2100. + + + + Identifies the MaximumDate bindable property. + + + + The lowest date selectable for this DatePicker. This is a bindable property. + The minimum selectable for the DateEntry. Default January 1, 1900. + + + + Identifies the MinimumDate bindable property. + + + + To be added. + A collection parameterized by an . Base class for and . + + Objects of type are parameterized with a type of . + + + + + + + The to add. + Adds a to the collection. + To be added. + + + Removes all values from this . + To be added. + + + The to check for in this . + Returns a Boolean value that indicates whether or not this contains the specified . + To be added. + To be added. + + + To be added. + To be added. + Copies instances from this to an array, starting at the specified index. + To be added. + + + Gets the number of instances contained in this . + To be added. + To be added. + + + Returns an enumerator that iterates through the instances in this . + To be added. + To be added. + + + The instance to find. + Returns the index of the first occurrence of in this . + To be added. + To be added. + + + The position at which to insert . + The to insert. + Inserts a into this at the location that is specified by . + To be added. + + + + . instances can have items added to them and removed from them. + + + + To be added. + + + The location of the item to get or set. + Gets or sets the value indexed by . + To be added. + To be added. + + + Event that is raised when the display size of item in the collection changes. + To be added. + + + The to remove from this . + Removes a from this and returns if the item was removed. + + if was in this and was therefore removed. if was not in this . + To be added. + + + The location in this from which to remove an instance. + Removes an item from this . + To be added. + + + Gets an enumerator that can be used to iterate over the instances in this . + To be added. + To be added. + + + An attribute that indicates that the specified type provides a concrete implementation of a needed interface. + To be added. + + + To be added. + Creates a new with default values. + To be added. + + + Enumeration specifying whether should return a reference to a global or new instance. + + The following example shows how can be used to specify a new instance: + + (DependencyFetchTarget.NewInstance); + ]]> + + + + + Return a global instance. + + + Return a new instance. + + + Static class that provides the factory method for retrieving platform-specific implementations of the specified type T. + To be added. + + + To be added. + To be added. + Returns the platform-specific implementation of type T. + To be added. + To be added. + + + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + To be added. + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + An utility class to interract with the current Device/Platform. + + + + The Action to invoke + Invokes an Action on the device main (UI) thread. + + This example show how to set the Text of Label on the main thread, e.g. in response to an async event. + + + { + label.Text = "Async operation completed"; +}); + ]]> + + + + + To be added. + To be added. + Returns a double that represents the named size for the font that is used on the element on the native platform. + To be added. + To be added. + + + To be added. + To be added. + Returns a double that represents a font size that corresponds to on . + To be added. + To be added. + + + Gets the kind of device Forms is currently working on. + A representing the device type. + + + + (optional) The Action to execute on iOS. + (optional) The Action to execute on Android. + (optional) The Action to execute on WinPhone. + (optional) The Action to execute if no Action was provided for the current OS. + Executes different Actions depending on the Forms is working on. + + This example show how to change the font of a Label on a single OS. + + + label.Font = Font.OfSize ("HelveticaNeue-UltraLight", NamedSize.Large)); + ]]> + + + + + The type of the value to be returned. + The value for iOS. + The value for Android. + The value for WinPhone. + Returns different values depending on the Forms is working on. + The value for the current OS. + + This example show how to use different heights for a Button on different OS. + + + + + + + + The to open. + Request the device to open the Uri. + This often navigates out of the application. + + + Gets the indicating the OS Forms is working on. + A indicating the current OS. + + + + The interval between invocations of the callback. + The action to run when the timer elapses. + Starts a recurring timer using the device clock capabilities. + While the callback returns the timer will keep recurring. + + + Class that exposes device-specific styles as static fields. + To be added. + + + The device-specific body style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific caption style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for detail text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific subtitle style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific title style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + Functions that modify values non-linearly, generally used for animations. + + Easing functions are applied to input values in the range [0,1]. The cubic easing functions are often considered to look most natural. + If developers wish to use their own easing functions, they should return a value of 0 for an input of 0 and a value of 1 for an input of 1 or the animation will have a jump. + The predefined functions have the following forms: + + + Member + Graph + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To be added. + Creates a new object with the function. + To be added. + + + Jumps towards, and then bounces as it settles at the final value. (Note: Known bug in 1.0.0 release) + + NOTE: The 1.0.0. release of has a known bug and runs backwards. The following graph shows the desired behavior, shortly to be released: + + + + + + + Leaps to final values, bounces 3 times, and settles. + + + + + + + + Starts slowly and accelerates. + + + + + + + + Accelerates and decelerates. Often a natural-looking choice. + + + + + + + + Starts quickly and the decelerates. + + + + + + + + A value in the range [0,1] to which the easing function should be applied. + Applies the easing function to the specified value . + The value of the easing function when applied to the value . + To be added. + + + Linear transformation. + + + + + + + + An easing function. + Converts a function into an . + An for the . + + An easing function should return a value of (or near) 0 at 0 and 1 (or near) for 1. + + + + Smoothly accelerates. + + + + + + + + Accelerates in and out. + + + + . + + + Smoothly decelerates. + + + + + + + + Moves away and then leaps toward the final value. + + + + + + + + Overshoots and then returns. + + + + + + + + A control that can edit multiple lines of text. + + For single line entries, see . + + + + + + + Initializes a new instance of the Editor class. + + + The following example creates a Editor with a Chat keyboard that fills the available space. + + + + + The class has the following XAML propertY: + + + Property + Value + + + Text + + The initial text that will appear in the editor. + + + + + + + Event that is fired when editing has completed. + iOS (Unfocusing the editor or pressing "Done" triggers the event). Android / Windows Phone (Unfocusing the Editor triggers the event) + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is null. + Setting this property will cause the event to be emitted. + + + Occurs when the text of the Editor changes. + + + + Identifies the Test bindable property. + + + + Provides the base class for all Forms hierarchal elements. This class contains all the methods and properties required to represent an element in the Forms hierarchy. + + The following diagram shows the classes derived from . + + + + The diagram shows some important categories: + + + Class + Description + + + + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + + + + + Cells are elements meant to be added to or . + + + + + + A that occupies most or all of the screen and contains a single child. + + + + + + + have a single child of type , while subclasses of have a collection of multiple children views, including other layouts. + + + + Controls and specialized s + + The lower part of the diagram shows the Xamarin.Forms classes for universally-available controls, such as s and s. + + + + + + Protected constructor used to initialize a the element. + To be added. + + + Occurs whenever a child element is added to the element. + To be added. + + + Occurs whenever a child element is removed from the element. + To be added. + + + Gets or sets a value used to identify a collection of semantically similar elements. + A string that represents the collection the element belongs to. + Use the class id property to collect together elements into semantically similar groups for identification in ui testing and in theme engines. + + + Identifies the ClassId bindable property. + To be added. + + + Occurs whenever a child element is added to the elements subtree. + To be added. + + + Occurs whenever a child element is removed from the elements subtree. + To be added. + + + Gets a value that can be used to uniquely identify an element through the run of an application. + A Guid uniquely identifying the element. + This value is generated at runtime and is not stable across runs of your app. + + + Invoked whenever the binding context of the element changes. Implement this method to add class handling for this event. + Implementors must call the base method. + + + The element that was added. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + The element that was removed. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + Implementors must call the base method. + + + Gets or sets the parent element of the element. + The element which should be the parent of this element. + Most application authors will not need to set the parent element by hand. + + + Gets the element which is the closest ancestor of this element that is a . + The closest ansestor which is a . + Convenient way of accessing the nearest ancestor of an element which is actually represented on screen visually. If this element is a visual element, its bounds are relative to its ParentView. + + + The BindableProperty from which to remove the DynamicResource. + Removes a previously set dynamic resource + + + + The BindableProperty. + The key of the DynamicResource + Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key. + + + + Gets or sets a user defined value to uniquely identify the element. + A string uniquely identifying the element. + Use the StyleId property to identify individual elements in your application for identification in ui testing and in theme engines. + + + To be added. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + The identifier of the being sought. + Finds an object previously registered with . + The Object previously associated with by a call to . Raises a if this is not in an . + To be added. + + + To be added. + To be added. + Internal use only. + To be added. + + + Identifier to be used with the . + Object to be associated with the . + Within an , creates an association between and . + To be added. + + + The identifier to be removed. + Removes from an . + To be added. + + + Provides data for events pertaining to a single . + + + + + + + + The element relevant to the event. + Constructs and initializes a new instance of the class. + + + + Gets the element relevant to the event. + The element relevant to the event. + + + + A control that can edit a single line of text. + + Entry is a single line text entry. It is best used for collecting small discrete pieces of information, like usernames and passwords. + + + The following example creates a new username and password set of entries. + + + The FormsGallery sample, which can be found on the Sample Applications page, has an EntryDemoPage.cs file. This file contains a longer and more complicated example. + + The class has the following XAML properties: + + + Property + Value + + + IsPassword + + true to indicate that the is a password field. Otherwise, false. + + + Placeholder + The default text that will appear in the control. + + + Text + + The initial text that will appear in the entry. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + + + + Initializes a new instance of the Entry class. + + + + Occurs when the user finalizes the text in an entry with the return key. + This finilaization will usually but not always be accompanied by IsFocused being set to false. + + + Gets or sets a value that indicates if the entry should visually obscure typed text. This is a bindable property. + + if the element is a password box; otherwise, . Default value is . + Toggling this value does not reset the contents of the entry, therefore it is advisable to be careful about setting IsPassword to false, as it may contain sensitive information. + + + Identifies the IsPassword bindable property. + + + + Gets or sets the placeholder text shown when the entry is null or empty. This is a bindable property. + The placeholder text shown when is null or empty. The default value is . + + + + Identifies the Placeholder bindable property. + + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is . + Setting this property will cause the event to be emitted. + + + Event that is raised when the text in this element is changed. + To be added. + + + Gets or sets the for the text of the Entry. This is a bindable property. + The of the text. + + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + A with a label and a single line text entry field. + + The following example shows a basic use. + + + + The class has the following XAML properties: + + + Property + Value + + + Keyboard + A property name that indicates which keyboard to present to the user when editing text. + + + Label + + The text that is presented next to the entry area in the . + + + + LabelColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + The default text that will appear in the control when it is empty. + + + Text + + The initial text that will appear in the editor. + + + + XAlign + + + Center, End, or Start, to indicate the placement of the text that is entered by the user. + + + + + + + + + + Initializes a new instance of the EntryCell class. + + + + Event fired when the user presses 'Done' on the EntryCell's keyboard + + + + Gets or sets the Keyboard to display while editing the EntryCell. This is a bindable property. + A representing the keyboard kind. Default is . + + + + Identifies the Keyboard bindable property. + + + + Gets or sets the fixed text presented next to the Entry in the EntryCell. This is a bindable property. + A . + + + + Gets or sets the Color used for rendering the Label property. This is a bindable property. + Default is Color.Default. + + + + Identifies the LabelColor bindable property. + + + + Identifies the Label bindable property. + + + + Gets or sets the placeholder text displayed in the Entry when the Text is null or empty. This is a bindable property. + + + + + Identifies the Placeholder bindable property, + + + + Gets or sets the content of the Entry of the EntryCell. This is a bindable property. + + + + + Identifies the Text bindable property. + + + + Gets or sets the horizontal alignement of the Text property. This is a bindable property. + Default is . + + + + Identifies the XAlign bindable property. + + + + Class that represents a triggering event and a list of objects that will be invoked when the event is raised. + + The class has the following XAML property: + + + Property + Value + + + Event + + The name of the event to which to respond. + + + + Object name + + The qualified name of a implementation that has been defined by the application developer. This object is instantiated and its method is called when the triggering event is raised. Attributes on this tag set corresponding proptery values on the implementation before the method is called. + + + + + + Creates a new instance. + + + + Gets the list of objects that will be invoked when the event that is identified by the property is raised. + + + + + Gets or sets the name of the event that will cause the actions that are contained in the to be invoked. + + + + + Internal. + + + + Internal. + + + + An that reads an image from a file. + To be added. + + + Creates a new object with default values. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. + Overriden for FileImageSource. FileImageSource are not cancellable, so this will always returns a completed Task with as Result. + + + Gets or sets the file from which this will load an image. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed. + To be added. + + + To be added. + Allows implicit casting from a string. + To be added. + To be added. + + + To be added. + Allows implicit casting to a string. + To be added. + To be added. + + + Event args for 's and events. + + + + The who's focused was changed. + Whether or not the was focused. + Constructs and initializes a new instance of the class. + + + + Gets whether or not the was focused. + + if the view was focused, otherwise. + + + + Gets the who's focused was changed. + The who's focused was changed. + + + + The font used to display text. + The available fonts, and the matching between and real displayed fonts is device-dependent. + + + The desired font size. + Returns a font instance that represents the default bold font, in the requested size, for the device. + The requested bold . + + + + The desired font . + Returns an usable font instance representing the default bold font, in the requested NamedSize, for the device. + The requested bold . + + + + Gets the default font for the device. + The default font for the device. + To be added. + + + The value to compare this font to. + Determine if the provided is equivalent to the current Font. + + if the provided object is an equivalent font. otherwise. + Overriden. + + + Gets a value that indicates whether the font is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which this font belongs. + The font family to which this structure belongs. + To be added. + + + Gets the size of the font. + A that indicates the size of the font. + To be added. + + + Get the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gets the named font size, such as "Large" or "Small". + To be added. + To be added. + + + The name of the targeted system font. + The desired font size. + Returns a structure with the requested font and size. + A instance. + Font availability is platform- and device-dependent. + + + The name of the targeted system font. + The desired font . + Returns an usable , with the requested font and NamedSize. + A Font instance. + Font availability is platform and device dependent. + + + To be added. + To be added. + Returns if represents the same font that represents. Otherwise, . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same font that represents. Otherwise, . + To be added. + To be added. + + + The desired font size. + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested . + + + + The desired font . + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested bold . + + + + The requested font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + The requested named font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + Returns a string representation of this font structure. + A string representation of this structure. + The method returns a string that contains a labeled, comma-separated list of the , , , and properties. + + + Gets a value that indicates whether the target operating system should use size that is specified by the property. + To be added. + To be added. + + + Whether the font is italic, bold, or neither. + Returns a new font structure with the specified attributes. + A new structure with the attributes that were specified with . + To be added. + + + The requested font size. + Returns a new font structure with the size that was specified with . + To be added. + To be added. + + + The requested named font size. + A new structure with the size that was specified with . + To be added. + To be added. + + + Enumerates values that describe font styles. + To be added. + + + The font is bold. + + + The font is italic. + + + The font is unmodified. + + + Converts a string into a font size. + To be added. + + + Initializes a new object. + To be added. + + + To be added. + Returns a value that indicates if the source type can be converted to a font size. + To be added. + To be added. + + + To be added. + To be added. + Converts an object into a font size. + To be added. + To be added. + + + A that converts from strings to . + String should be formatted as "[name],[attributes],[size]" there may be multiple attributes, e.g. "Georgia, Bold, Italic, 42" + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Represents a text with attributes applied to some parts. + + + + Initializes a new instance of the FormattedString class. + To be added. + + + To be added. + Cast the FormattedString to a string, stripping all the attributes. + To be added. + To be added. + + + To be added. + Cast a string to a FromattedString that contains a single span with no attribute set. + To be added. + To be added. + + + Event that is raised when a bound property is changed. + To be added. + + + Gets the collection of spans. + To be added. + To be added. + + + Returns the text of the formatted string as an unformatted string. + To be added. + To be added. + + + An element containing a single child, with some framing options. + + Frame have a default of 20. + + The following example shows how to construct a new Frame with an Outline color. + + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasShadow + + + true or false, to indicate whether to show a shadow effect where the platform supports it. + + + + OutlineColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + Initializes a new instance of the Frame class. + A Frame has a default of 20. + + + Gets or sets a flag indicating if the Frame has a shadow displayed. This is a bindable property. + A indicating whether or not the Frame has a shadow. Default is . + + + + Identifies the HasShadow bindable property. + + + + Gets or sets the color of the border of the Frame. This is a bindable property. + A representing the border Color. Default is . + + + + Identifies the OutlineColor bindable property. + + + + The base class for all gesture recognizers. + + + + The parent element of the gesture recognizer. + An element from which the binding context will be inherited. + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying the various states of a gesture. + To be added. + + + The gesture has begun and has not ended, failed, or been cancelled. + + + The gesture was cancelled. + + + The gesture has ended. + + + The gesture was not recognized. + + + The gesture is in progress and may still become recognizable.. + + + The gesture state is being updated. + + + A layout that arranges views in rows and columns. + + + The following example shows a basic use: + + + The following shows Grids on the various platforms: + + + + It is convenient for the layout class arranges to store row and column indices of each of its child elements. Additionally, when a element is laid out with a grid, application developers can access and change the child's position and span from the child itself by using the , , , , static methods, and the equivalent static methods for columns and column spans. + The class has the following XAML properties. + + + Property + Value + + + Children + + Nested visual elements that are displayed in the Grid. + + + + ColumnDefinitions + + A list of ColumnDefinition specifications. See . + + + + ColumnSpacing + An integer. + + + RowDefinitions + + A list of RowDefinition specifications. See . + + + + RowSpacing + + An integer. + + + + The class has the following XAML attached properties. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + ColumnSpan + An integer that represents the number of Columns that the item will span. + + + Row + + An integer that represents the row in which the item will appear. + + + + RowSpan + + An integer that represents the number of rows that the item will span. + + + + The documentation for the following member methods contains XAML syntax examples: + + + + + Initializes a new instance of the Grid class. + + + + Gets the collection of child elements of the Grid. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the Grid class. + + + + Provides the interface for the bound property that gets or sets the ordered collection of objects that control the layout of columns in the . + A ColumnDefinitionCollection for the Grid instance. + + ColumnDefinitions is an ordered set of ColumnDefinition objects that determine the width of each column. Each successive ColumnDefintion controls the width of each successive column. If ColumnDefinitions is empty, or if there are more columns than definitions, then columns for which there is no definition are rendered as if they were controlled by a ColumnDefinition object that has its property set to . + The property has XAML syntax support. The syntax for this operation is shown below. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the zero-based column index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Provides the interface for the bound property that gets or sets the distance between columns in the Grid. + The space between columns in this layout. + + The property does not control spacing on the left and right edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of columns that a child element spans. See Remarks. + + The interface for this property is defined by the and methods. + + + + An element that belongs to the Grid layout. + Gets the column of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Column attached property. + + + + An element that belongs to the Grid layout. + Gets the column span of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the number of Columns that the item will span. + + + + The remarks for the method contain syntax for and information about the ColumnSpan attached property. + + + + An element that belongs to the Grid layout. + Gets the row of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Row attached property. + + + + An element that belongs to the Grid layout. + Gets the row span of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached properties: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + The remarks for the method contain syntax for and information about the RowSpan attached property. + + + + Invalidates the grid layout. + To be added. + + + X-coordinate of the top left corner of the bounding rectangle. + Y-coordinate of the top left corner of the bounding rectangle. + Width of the bounding rectangle. + Height of the bounding rectangle. + + Lays out the child elements when the layout is invalidated. + + To be added. + + + The element that was added. + Method that is called when a child is added to this element. + + + + The element that was removed. + Method that is called when a child is removed from this element. + To be added. + + + The requested width. + The requested height. + Method that is called when an attempt is made to resize this element. + + The new requested size. + + To be added. + + + Provides the interface for the bound property that gets or sets the collection of RowDefinition objects that control the heights of each row. + A RowDefinitionCollection for the Grid instance. + + RowDefinitions is an ordered set of objects that determine the height of each column. Each successive RowDefintion controls the width of each successive column. If RowDefinitions is empty, or if there are more rows than definitions, then rows for which there is no definition are rendered as if they were controlled by a RowDefinition object that has its property set to . + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + To be added. + + + Implements the attached property that represents the zero-based row index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Gets or sets the amount of space left between rows in the Grid. This is a bindable property. + The space between rows + + The property does not control spacing on the top and bottom edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of rows that a child element spans, and allows the class to bind it to properties on other objects at run time. + + The interface for this property is defined by the and methods. + + + + A child element of this Grid to move to a different column. + The column in which to place the child element. + Changes the column in which a child element will be placed. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the Column in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new column span. + The new column span. + Changes the column span of the specified child element. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the number of Columns that the item will span. + + + + + + + A child element of this Grid to move to a different row. + The row in which to place the child element. + Changes the row in which a child element will be placed. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new row span. + The new row span. + Changes the row span of the specified child element. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + + + + The type of elements in the grid. + List interface with overloads for adding elements to a grid. + + + + The view to add. + The column to add the view to. + The row to add the view to. + Adds a view to the List at the specified location with a RowSpan and HeightSpan of 1. + + + + The view to add. + The left edge of the column span. Must be greater than 0. + The right edge of the column span. Must be greater than left. + The top edge of the row span. Must be greater than 0. + The bottom edge of the row span. Must be greater than top. + Adds a view to the List at the specified row and column spans. + + + + The views to add. + Add a collection views to the List such that they are horizontally stacked to the right of the current contents of the Grid. + The final span of each view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is horizontally stacked to the right of the current contents of the Grid. + The final span of the view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The views to add. + Add a collection views to the List such that they are vertically stacked below the current contents of the Grid. + The final span of each view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is vertically stacked below the current contents of the Grid. + The final span of the view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + Used to define the size (width/height) of Grid ColumnDefinition and RowDefinition. + + GridLength of type GridUnitType.Absolute represents exact size. The ones of type GridUnitType.Auto adapts for fitting the size of the elements in the gird column/row. GridLenght of type GridUnitType.Star are used to split the available size in proportional buckets. + This valuetype is readonly. + + + + To be added. + Initializes a new Absolute GridLength. + This is striclty equivalent to new GridLength (value, GridUnitType.Absolute). + + + The size of the GridLength. + The GridUnitType (Auto, Star, Absolute) of the GridLength. + Initializes a new GridLength. + + + + A ready to reuse GridLength of GridUnitType.Auto. + + Value has no meaning for GridLength ot type GridUnitType.Auto. + + + A GridLength to compare to. + Test the equality of this GridLength and another one. + true is the GridLength are equal. False otherwise. + + + + Returns a value that is used for efficient storage of this object in collections. + To be added. + overriden. + + + Gets or sets the GridUnitType of the GridLength + The GridUnitType of the GridLength + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Absolute. + true if the GridUnitType of the GridLength is GridUnitType.Absolute + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Auto. + true if the GridUnitType of the GridLength is GridUnitType.Auto + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Star. + true if the GridUnitType of the GridLength is GridUnitType.Star + + + + The absolute size + Casting operator to convert a double into a GridLength of type GridUnitType.Absolute + A GridLength of type GridUnitType.Absolute and of size absolutesize + + + + Gets the Value of the GridLength. + The value in GridUnitType of the GridLength. + + + + A that converts from strings to s. + + The following example shows some uses of : + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Enumerates values that control how the property is interpreted for row and column definitions. + To be added. + + + Interpret the property value as the number of device-specific units. + To be added. + + + Ignore the property value and choose a size that fits the children of the row or column. + To be added. + + + Interpret the property value as a proportional weight, to be laid out after rows and columns with or are accounted for. + After all the rows and columns of type and are laid out, each of the corresponding remaining rows or columns, which are of type , receive a fraction of the remaining available space. This fraction is determined by dividing each row's or column's property value by the sum of all the row or column property values, correspondingly, including its own. + + + An abstract attribute whose subclasses specify the platform-specific renderers for Xamarin.Forms abstract controls. + To be added. + + + To be added. + To be added. + Creates a new object that maps events from to . + To be added. + + + Returns a Boolean value that indicates whether the runtime should automatically register the handler for the target. + To be added. + To be added. + + + A WebViewSource bound to an HTML-formatted string. + To be added. + + + Creates a new empty object with default values. + To be added. + + + The base URL for the source HTML document. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + The HTML content. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Defines an interface for elements that can be animated. + To be added. + + + Implement this method to begin a batch of animations that have been committed. + To be added. + + + Implement this method to commit a batch of animations so that they can be run with the method. + To be added. + + + Interface defining the type of and . + + Objects of type are parameterized with a type of . + + + + + + + Event that is raised when the size of the row or column changes. + To be added. + + + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + Sets a bound property value from a renderer without breaking the binding. + To be added. + + + The base interface all gesture recognizers must implement. + This interface is currently empty, this will likely change. + + + Interface indicating layout behavior and exposing the event. + To be added. + + + Event that is raised when the layout changes. + To be added. + + + + that holds an image. + + + The following example creates a new image from a file + + + + + The FormsGallery sample, which can be found on the Sample Applications page, has a ImageDemoPage.cs file. This file contains a longer and more complicated example. + + + + Initializes a new instance of the Image class. + + + The following example creates a new image from a file + + + + + + + + Gets or sets the scaling mode for the image. This is a bindable property. + A representing the scaling mode of the image. Default is . + + + + Identifies the Aspect bindable property. + + + + Gets the loading status of the image. This is a bindable property. + A indicating if the image is loadin. Default is false. + + + The following example illustrates running a to indicate that the image is loading: + + + + + + + Identifies the IsLoading bindable property. + This bindable property is readonly. + + + Gets or sets the opacity flag for the image. This is a bindable property. + A indicating the value for the property. Default is false. + If true, you'll be able to see through transparent parts of the image. + + + Identifies the IsOpaque bindable property. + + + + Invoked when the BindingContext changes. + Overriden for Image. + + + The name of the property. + Invoked when a property has changed. + Overriden for Image. + + + The name of the property. + Invoked when a property will change. + Overriden for Image. + + + The available width. + The available height. + Invoked when the layotu cycle request the element desired size. + + Overriden for Image. + + + Gets or sets the source of the image. This is a bindable property. + An representing the image source. Default is null. + + + + Identifies the Source bindable property. + + + + A that has an image. + + + objects are used to place images and accompanying text into a table. + + The following example shows a basic use. + + + + + + + + + Initializes a new instance of the ImageCell class. + + + + Gets or sets the ImageSource from which the Image is loaded. This is a bindable property. + + + + + Identifies the ImageSource bindable property. + + + + Overriden.. + + + + Abstract class whose implementors load images from files or the Web. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. The result of the Task indicates if the Task was successfully cancelled. + Calling Cancel() multiple times will throw an exception. + + + Gets the CancellationTokenSource. + + Used by inheritors to implement cancellable loads. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A string representing the id of the EmbeddedResource to load. + Creates an ImageSource for an EmbeddedResource included in the Assembly from which the call to FromResource is made. + A newly created ImageSource. + + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A bool indicating if the source was cancelled. + Called by inheritors to indicate the end of the loading of the source. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate the beginning of a loading operation. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate that the source changed.. + To be added. + + + To be added. + Allows implicit casting from a string that represents an absolute URI. + To be added. + To be added. + + + To be added. + Allows implicit casting from objects that were created with an absolute URI. + To be added. + To be added. + + + Gets or sets the element to which this object belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Interface abstracting platform-specific navigation. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + The page to add. + The existing page, before which will be inserted. + Inserts a page in the navigation stack before an existing page in the stack. + To be added. + + + Gets the modal navigation stack. + To be added. + To be added. + + + Gets the stack of pages in the navigation. + To be added. + To be added. + + + Asynchronously removes the most recent from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the most recent from the navigation stack, with optional animation. + To be added. + To be added. + + + Asynchronously dismisses the most recent modally presented . + An awaitable Task<Page>, indicating the PopModalAsync completion. The Task.Result is the Page that has been popped. + + The following example shows PushModal and PopModal usage: + + + + + Application developers must the result of and . Calling may cause a deadlock if a previous call to or has not completed. + + + + + To be added. + Asynchronously dismisses the most recent modally presented , with optional animation. + To be added. + To be added. + + + Pops all but the root off the navigation stack. + A task representing the asynchronous dismiss operation. + To be added. + + + To be added. + Pops all but the root off the navigation stack, with optional animation. + To be added. + To be added. + + + The to be pushed on top of the navigation stack. + Asynchronously adds a to the top of the navigation stack. + A task representing the asynchronous dismiss operation. + + + The following example shows and usage: + + + + + + + + To be added. + To be added. + Asynchronously adds a to the top of the navigation stack, with optional animation. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + + The following example shows PushModalAsync and PopModalAsync usage: + + + + + + + To be added. + To be added. + Presents a modally, with optional animation. + To be added. + To be added. + + + To be added. + Removes the specified page from the navigation stack. + To be added. + + + The base class of a view which can take keyboard input. + The constructor of this class is internal. Forms does not provide any renderer for InputView base class. + + + Gets or sets the Keyboard for the InputView. This is a bindable property. + The to use for the InputView. + + + + Identifies the Keyboard bindable property. + + + + To be added. + Interface defining a container for s and exposing a property. + To be added. + + + Gets the current page. + To be added. + To be added. + + + Interface defining the abstraction of a native platform. + To be added. + + + The binding context for the native platform. + To be added. + To be added. + + + Event that is raised when the binding context changes. + To be added. + + + The platform engine, useful for getting the screen size and for finding out if the paltform supports 3D. + To be added. + To be added. + + + Gets the root page of the platform. + To be added. + To be added. + + + To be added. + Sets the root page of the platform. + To be added. + + + Interface defining a native platform rendering engine. + To be added. + + + To be added. + To be added. + To be added. + Performs a size request on the native platform. + To be added. + To be added. + + + Gets a Boolean value that indicates whether the native platform supports 3D graphics. + To be added. + To be added. + + + Internally-used flagging interface indicating types that can be registered with . + To be added. + + + The type of visual that the items will be templated into. + A base class for a view that contains a templated list of items. + + + This class is used as a base class for views that wish to take in a list of user objects and produce views for each of them to be displayed, such as . The generic + argument is used to specify the type of visual that the view expects. In the case of , only subclasses are accepted, so that's + what it provides as its argument. + + + + + The user object + Creates a default instance for . + An instance of the class. + + This method is called by the templating system when is . + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + Gets or sets the source of items to template and display. + To be added. + + While any implementer is accepted, any that do not implement or + (where T is a class) will be converted to list by iterating. + If your collection implements , any changes raised from the event on this interface will be reflected in the items view. Note that if the event + is raised on another thread the main thread, the results will be unpredictable depending on the platform. To safely modify your collection (and raise the event) from another thread, call + to enable proper synchronization of access to the thread. + + + + Identifies the property. + + + + Gets or sets the to apply to the . + The for the , or + + The ItemTemplate is used to define the visual appearance of objects from the . Through + the item template you can set up data bindings to the user objects supplied to automatically fill in the visual and respond to any changes in the user + object. + If the item template is , is called and the result is used as the visual. + + In this example, a template for a is created for a simple user object. + + + + + + + + + Identifies the property. + + + + The visual content to setup. + The index of the content. + Performs any additional setup for the content at creation time. + + This method is called when the is creating visuals for user items. At this point, + the will have been set. You can override this method to perform additional setup + for content specific to your subclass. , for example, uses + this method to set to itself. + + + + To be added. + Creates a default TVisual by using + To be added. + To be added. + + + To be added. + To be added. + Configures . + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + To be added. + Creates a new object for the specified that was tapped and the to which it belongs. + To be added. + + + The collection of elements to which the tapped item belongs. + To be added. + To be added. + + + The visual element that the user tapped. + To be added. + To be added. + + + Event args when an items visiblity has been changed in a . + + + + The modified item. + Initializes a new instance of the ItemVisibilityEventArgs class with the item whose visibility has changed. + + + + The item from the whose visibility has changed. + An object. + + + + Interface defining methods for two-way value conversion between types. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert to by using and . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert back from by using and . + To be added. + To be added. + + + To be added. + The type of element that can be added to the container. + + + + The children collection of a visual element. + The collection containing the visual elements children. + + + + Contains methods that set values from renderers on bound properties without breaking the binding. + To be added. + + + Method that is called when the native size of a visual element changes. + To be added. + + + When implemented in a renderer, called to invalidate the layout when the native size of a visual element changes. + To be added. + + + Default keyboard and base class for specialized keyboards, such as those for telephone numbers, email, and URLs. + To be added. + + + Gets an instance of type "ChatKeyboard". + To be added. + To be added. + + + To be added. + Returns a new keyboard with the specified . + To be added. + To be added. + + + Gets an instance of type "Keyboard". + To be added. + To be added. + + + Gets an instance of type "EmailKeyboard". + To be added. + To be added. + + + Gets an instance of type "NumericKeyboard". + To be added. + To be added. + + + Gets an instance of type "TelephoneKeyboard". + To be added. + To be added. + + + Gets an instance of type "TextKeyboard". + To be added. + To be added. + + + Gets an instance of type "UrlKeyboard".. + To be added. + To be added. + + + Flagging enumeration for Keyboard options such as Capitalization, Spellcheck, and Suggestions. + To be added. + + + Capitalize the first words of sentences, and perform spellcheck and offer suggested word completions on text that the user enters. + + + Capitalize the first words of sentences. + + + Perform spellcheck on text that the user enters. + + + Offer suggested word completions on text that the user enters. + + + A that converts a string into a . + + The following XAML snippet illustrates a case where a KeyboardTypeConverter is used behind the scenes: + + + ]]> + + The following shows some examples of forms: + + { + {"Keyboard.Default", Keyboard.Default}, + {"Keyboard.Email", Keyboard.Email}, + {"Keyboard.Text", Keyboard.Text}, + {"Keyboard.Url", Keyboard.Url}, + {"Keyboard.Telephone", Keyboard.Telephone}, + {"Keyboard.Chat", Keyboard.Chat}, +}) +Assert.AreSame (kvp.Value, converter.ConvertFrom (kvp.Key)); + ]]> + + + + + Initializes a new instance of the KayboardTypeConverter class. + + + + The type of the object. + Returns wheher this converter can convert an object of the given type. + + if the KeyboardTypeConverter can convert from sourceType. otherwise. + This method only returns is sourceType is . + + + The Culture fo the value parameter. + The object to convert from. + TConvert the given value into a Keyboard. + A . + This will throw an IvalidOperationException if the conversion failed. + + + A that displays text. + + A Label is used to display single-line text elements as well as multi-line blocks of text. + + + + The following example, adapted from the default Xamarin Forms solution, shows a basic use: + + + The FormsGallery sample, which can be found on the Sample Applications page, has a LabelDemoPage.cs file. This file contains a longer and more complete example. + + The class has the following XAML properties: + + + Property + Value + + + Font + + Deprecated. Use FontAttributes, FontFamily, and FontSize, instead. A string of the format [name],[attributes],[size]. The font specification may contain multiple attributes, e.g. Georgia, Bold, Italic, 42. + + + + FontAttributes + + + Bold, Bold,Italic, or None. + + + + FontFamily + + A font family, such as sans-serif or monospace. + + + + FontSize + + A named size, such as Large, or an integer that represents the size in device units. + + + + + LineBreakMode + + A string that corresponds to a enumeration value. + + + + Text + + The text that will appear on the label. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + XAlign + + + Center, End, or Start, to indicate the horizontal placement of the label text. + + + + YAlign + + + Center, End, or Start, to indicate the vertical placement of the label text. + + + + + + + Initializes a new instance of the Label class. + + + + Gets or sets the Font for the Label. This is a bindable property. + The value for the Label. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the label is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the label belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets the size of the font for the label. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the formatted text for the Label. This is a bindable property. + The value to be displayed inside of the Label. This is a bindable property. + Setting FromattedText to a non-null value will set the Text property to null. + + + + Backing store for the FormattedText property. + To be added. + + + Gets or sets the LineBreakMode for the Label. This is a bindable property. + The value for the Label. The default is + + + + Backing store for the LineBreakMode bindable property. + + + + Gets or sets the text for the Label. This is a bindable property. + The value to be displayed inside of the Label. + Setting Text to a non-null value will set the FormattedText property to null. + + + + Gets or sets the for the text of this Label. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Gets or sets the horizontal alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is left-aligned. + + + + Backing store for the XAlign bindable property. + + + + Gets or sets the vertical alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is top-aligned. + + + + Backing store for the YAlign bindable property. + + + + + Provides the base class for all Layout elements. Use Layout elements to position and size child elements in Forms applications. + + + Subtypes of include , , and , as shown in the following diagram. + The property of contains a list of children of the parameterized type T, which must be a type of . Since is itself a subclass of , this allows s to hold sub-layouts, scrolling regions, etc. + + + + The class has the following XAML properties: + + + Property + Value + + + IsClippedToBounds + + + true or false, to indicate whether the layout is clipped to its bounding rectangle. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + + + + + + + Intitializes a new instance. + To be added. + + + Forces a layout cycle on the element and all of its descendants. + + Calling ForceLayout frequently can have negative impacts on performance. + + + + The available width that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the Layout. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + + + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of the app. Overriding GetSizeRequest should only be done if the developer wants to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + + + Invalidates the current layout. + Calling this method will invalidate the measure and triggers a new layout cycle. + + + Gets or sets a value which determines if the Layout should clip its children to its bounds. + + if the Layout is clipped; otherwise, . The default value is . + To be added. + + + Identifies the bindable property. + + + + Occurs at the end of a layout cycle if any of the child element's have changed. + + Developers wishing to implement animations may wish to begin them at the end of a LayoutChanged event. + + + + The child element to be positioned. + The bounding region in which the child should be positioned. + Positions a child element into a bounding region while respecting the child elements and . + This method is called in the layout cycle after the general regions for each child have been calculated. This method will handle positioning the element relative to the bounding region given if the bounding region given is larger than the child's desired size. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a Layout. + Implementors wishing to change the default behavior of a Layout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The view to lower in the visual stack. + Sends a child to the back of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which the children are enumerated. + + + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + To be added. + + + The child element whose preferred size changed. + The event data. + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + This method has a default implementation and and application developers must call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has a default implementation which triggers the layout cycle of the Layout to begin. + + + Gets or sets the inner padding of the Layout. + The Thickness values for the layout. The default value is a Thickness with all values set to 0. + + + The padding is the space between the bounds of a layout and the bounding region into which its children should be arranged into. + + + The following example shows setting the padding of a Layout to inset its children. + + + + + + + + Identifies the Padding bindable property. + + + + The view to raise in the visual stack. + Sends a child to the front of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which they are enumerated. + + + To be added. + When implemented, should return if should call , and to return if it should not. + To be added. + To be added. + + + To be added. + When implemented, should return if should call when it is removed, and to return if it should not. + To be added. + To be added. + + + Instructs the layout to relayout all of its children. + This method starts a new layout cycle for the layout. Invoking this method frequently can negatively impact performance. + + + The subclass of the layout contains. + A base implementation of a layout with undefined behavior and multiple children. + + + s contain that are of the type T with which the was specified. This T must be of type . Since s are subclasses of , this means that layouts may be nested, contain scrolling regions, etc. + + The following image shows the relationship between , , , and important subtypes. + + + + + The following example shows adding and removing elements from a layout. + + + layout, IEnumerable newItems) + { + layout.Children.Clear (); + foreach (var item in newItems) { + layout.Children.Add (item); + } + } + ]]> + + + + + Provides the base initialization for objects derived from the Layout<T> class. + + + + Gets an IList<View> of child element of the Layout. + A IList<View>. The default is an empty list. + + + The Children collection of a Layout contains all the children added throught the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a layout, setting a property, and adding the children in the object initializer. + + + + + + + + The view which was added. + Invoked when a child is added to the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + The view which was removed. + Invoked when a child is removed from the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + Values that represent LayoutAlignment. + To be added. + + + The center of an alignment. + + + The end of an alignment. Usually the Bottom or Right. + + + Fill the entire area if possible. + + + The start of an alignment. Usually the Top or Left. + + + A struct whose static members define various alignment and expansion options. + To be added. + + + An alignment value. + Whether or not an element will expand to fill available space in its parent. + Creates a new object with and . + To be added. + + + Gets or sets a value that indicates how an element will be aligned. + The flags that describe the behavior of an element. + To be added. + + + A structure that describes an element that is centered and does not expand. + To be added. + + + A structure that describes an element that is centered and expands. + To be added. + + + A structure that describes an element that appears at the end of its parent and does not expand. + To be added. + + + A object that describes an element that appears at the end of its parent and expands. + To be added. + + + Gets or sets a value that indicates whether or not the element that is described by this structure will occupy the largest space that its parent will give to it. + Whether or not the element that is described by this structure will occupy the largest space that its parent will give it. if the element will occupy the largest space the parent will give to it. if the element will be as compact as it can be. + To be added. + + + A stucture that describes an element that has no padding around itself and does not expand. + To be added. + + + A structure that describes an element that has no padding around itself and expands. + To be added. + + + A structure that describes an element that appears at the start of its parent and does not expand. + To be added. + + + A structure that describes an element that appears at the start of its parent and expands. + To be added. + + + Enumeration specifying various options for line breaking. + To be added. + + + Wrap at character boundaries. + + + Truncate the head of text. + + + Truncate the middle of text. This may be done, for example, by replacing it with an ellipsis. + + + Do not wrap text. + + + Truncate the tail of text. + + + Wrap at word boundaries. + + + An that displays a collection of data as a vertical list. + + + + + The following example shows a basic use: + + people = new List + { + new Person("Abigail", new DateTime(1975, 1, 15), Color.Aqua), + new Person("Bob", new DateTime(1976, 2, 20), Color.Black), + // ...etc.,... + new Person("Yvonne", new DateTime(1987, 1, 10), Color.Purple), + new Person("Zachary", new DateTime(1988, 2, 5), Color.Red) + }; + + // Create the ListView. + ListView listView = new ListView + { + // Source of data items. + ItemsSource = people, + + // Define template for displaying each item. + // (Argument of DataTemplate constructor is called for + // each item; it must return a Cell derivative.) + ItemTemplate = new DataTemplate(() => + { + // Create views with bindings for displaying each property. + Label nameLabel = new Label(); + nameLabel.SetBinding(Label.TextProperty, "Name"); + + Label birthdayLabel = new Label(); + birthdayLabel.SetBinding(Label.TextProperty, + new Binding("Birthday", BindingMode.OneWay, + null, null, "Born {0:d}")); + + BoxView boxView = new BoxView(); + boxView.SetBinding(BoxView.ColorProperty, "FavoriteColor"); + + // Return an assembled ViewCell. + return new ViewCell + { + View = new StackLayout + { + Padding = new Thickness(0, 5), + Orientation = StackOrientation.Horizontal, + Children = + { + boxView, + new StackLayout + { + VerticalOptions = LayoutOptions.Center, + Spacing = 0, + Children = + { + nameLabel, + birthdayLabel + } + } + } + } + }; + }) + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + listView + } + }; + } + } +} + +]]> + + The class has the following XAML properties: + + + Property + Value + + + + HasUnevenRows + + + true or false, to indicate whether the items in the list all have the same height. + + + + IsGroupingEnabled + + + true or false, to indicate whether grouping is enabled. + + + + RowHeight + + An integer that describes the height of the items in the list. This is ignored if HasUnevenRows is true. + + + + + + + + Creates and initializes a new instance of the class. + + + + The item to create a default visual for. + Creates an instance of the default visual representation of an item. + + A instance with its text set to the string representation of the object (). + + + + This method is called by the templating system when is . + + + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + + Gets or sets the binding to use for display the group header. + The instance to apply to grouped lists, or . + + + This binding can be used to simply set a the text of the group headers without defining a full template and uses the default visuals + of the platform to display it. The binding is applied to the of the group. + + + This property is mutually exclusive with property. Setting it will set + to . + + + + This example shows an alphabetized list of people, grouped by first initial with the display binding set. + + + { + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } + } + ]]> + + + + + Identifies the property. + + + + Gets or sets a for group headers. + The for group headers, or . + + + Use this property to define a template for a that will be used as the header for groups in this + . The will be the + for each group. + + + GroupHeaderTemplate is mutually exclusive with . Setting this property + will set to . + + Empty groups will still display a group header. + + + + + + + Identifies the property. + + + + Gets or sets a binding for the name to display in grouped jump lists. + The instance to apply to grouped lists, or . + + + When grouping items in a , it is often useful to have jump lists to jump to specific + sections in the list. For example, in an alphabetically grouped lists, the jump list would be the the letter of each group. + This binding is applied against the of each group to select the short name to display + in the jump list. + + + Note: On Android, there is no displayed jump list. + + + + This example shows an alphabetized list of people, grouped by first initial with the short name binding set. + + +{ + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } +} + ]]> + + + + + Identifies the property. + + + + Gets or sets a Boolean value that indicates whether this element has uneven rows. + + if this control has uneven rows. Otherwise, + + + When the property is , the property is ignored for each child element that has a value that is greater than 0, in which case that element's value is used, instead. If a child element's property is equal to 0, then the value is used for that element. + + Setting this property to does not enable automatic sizing of cells. iOS as a platform must have a size specified ahead of time and due to this restriction you must set . + + + + Identifies the property. + + + + Gets or sets whether or not grouping is enabled for . + + if grouping is enabled, otherwise and by default. + + + + + + + Identifies the property. + + + + Occurs when the visual representation of an item is being added to the visual layout. + This method is guaranteed to fire at some point before the element is on screen. + + + Occurs when the visual representation of an item is being removed from the visual layout. + This method is for virtualization usage only. It is not guaranteed to fire for all visible items when the List is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Event that is raised when a new item is selected. + To be added. + + + Event that is raised when an item is tapped. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made.. + To be added. + To be added. + + + Gets or sets a value that represents the height of a row. + To be added. + To be added. + + + The backing store for the property. + + + + The item from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the . + + A linear search is done for the item, so if the same reference appears multiple times in the list, the first item will be scrolled to. This includes if grouping is enabled. + + + contains an invalid value for . + + + The item from your to scroll to. + The group from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the in the + + A linear search is done for the item, so if the same reference appears multiple times in the , the first item will be scrolled to. The same item in a different group will be ignored. + + + contains an invalid value for . + + + is . + + + Gets or sets the currently selected item from the . + The selected item or if no item is selected. + + + + Identifies the property. + + + + To be added. + To be added. + Makes this element the of the . + To be added. + + + To be added. + Raises the event for . + To be added. + + + To be added. + Raises the event for . + To be added. + + + Enumerates values that control how detail content is displayed in a master-detail page. + To be added. + + + To be added. + + + Details pop over the page. + + + Details are always displayed in a split screen. + + + Details are displayed in a split screen when the device is in landscape orientation. + + + Details are displayed in a split screen when the device is in portrait orientation. + + + A that manages two panes of information: A master page that presents data at a high level, and a detail page that displays low-level details about information in the master. + + The following example code, taken from the FormsGallery sample application, creates a that allows the user to view detailed information about a color that she chooses from a list. Note that the NamedColorPage class, defined in as a sublcass of in another file in the sample application, simply displays RGB data, a with its background color set to the color that the user selected, and, finally, hue, saturation, and luminosity data. + The sample below illustrates three key concepts. First, the "Master" portion of the MasterDetailPage is represented by the property, which is set to a element in this example. This element contains a label and a list of colors. Second, the "Detail" portion of the is represented by the property, which, in this example, is set to the NamedColorPage that was noted above. Third, and finally, the page that is represented by the property is displayed by setting the property to ; That is, the property controls whether or not the page that is represented by the is presented to the user. + The page must have its property set. Additionally, the page will only display a navigation bar if it is an instance of . + + + { + this.IsPresented = true; + })); + } + + // Define a selected handler for the ListView. + listView.ItemSelected += (sender, args) => + { + // Set the BindingContext of the detail page. + this.Detail.BindingContext = args.SelectedItem; + + // Show the detail page. + this.IsPresented = false; + }; + + // Initialize the ListView selection. + listView.SelectedItem = namedColors[0]; + + + } + } +} + ]]> + + + The Windows Phone and Android platforms do not support sliding the detail screen in order to show or hide it. Use a to allow the user to show and hide the Detail screen on these platforms. On Windows Phone, consider using a user interface class that provides an experience that is more consistent with that platform, such as . + + + + + Creates a new empty . + To be added. + + + Gets or sets the detail page that is used to display details about items on the master page. + To be added. + To be added. + + + Gets or sets a value that turns on or off the gesture to reveal the master page. This is a bindable property. + + if gesture is enabled; otherwise . Default is . + Has no effect on Windows Phone. + + + Backing store for the IsGestureEnabled bindable property. + + + + Gets or sets a value that indicates whether or not the visual element that is represented by the property is presented to the user. + To be added. + Setting this property causes the event to be raised. + + + Event that is raised when the visual element that is represented by the property is presented or hidden. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Lays out the master and detail pages. + To be added. + + + Gets or sets the master page. + To be added. + To be added. + + + Gets or sets a value that indicates how detail content is displayed. + To be added. + To be added. + + + Backing store for the MasterBehavior property. + To be added. + + + Event that is raised when a detail appears. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Event that is raised when a detail disappears. + To be added. + + + Method that is called when the property of this is set. + To be added. + + + To be added. + To be added. + To be added. + + + Class that presents a menu item and associates it with a command. + + The class has the following XAML properties: + + + Property + Value + + + Command + + A binding to a command. + + + + CommandParameter + + A parameter to pass to the command. + + + + + IsDestructive + + + true or false, to indicate whether the command deletes an item in a list. + + + + Text + + The text to display on the menu item. + + + + + + + Intitializes a new instance. + To be added. + + + Event that is raised when the menu item is clicked. + To be added. + + + Gets or sets the command that is run when the menu is clicked. + To be added. + To be added. + + + Gets or sets the parameter that is passed to the command. + To be added. + To be added. + + + Identifies the command parameter bound property. + To be added. + + + Identifies the command bound property. + To be added. + + + Gets or sets the icon for the menu item. + To be added. + To be added. + + + Identfies the icon bound property. + To be added. + + + Gets or sets a value that indicates whether or not the menu item removes its associated UI element. + To be added. + To be added. + + + Identifies the IsDestructive bound property. + To be added. + + + When overriden by an app dev, implements behavior when the menu item is clicked. + To be added. + + + The text of the menu item. + To be added. + To be added. + + + Identifies the text bound property. + To be added. + + + Associates a callback on subscribers with a specific message name. + + The following shows a simple example of a strongly-typed callback using is: + + (subscriber, "IntPropertyMessage", (s, e) => { + subscriber.IntProperty = e; +}); + +//...later... + +MessagingCenter.Send(this, "IntPropertyMessage", 2); +Assert.AreEqual(2, subscriber.IntProperty); + ]]> + + + + + To be added. + To be added. + To be added. + Sends a named message that has no arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Sends a named message with the specified arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to parameterized messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterless subscriber messages. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterized subscriber messages. + To be added. + + + The particular subclass of that the MultiPage services. + A bindable, templatable base class for pages which contain multiple sub-pages. + + Provides a base implementation for binding and templating pages. + The class has the following XAML properties: + + + Property + Value + + + ItemsSource + + XAML extension markup that specifies a static collection of data objects. + + + + ItemTemplate + + XAML markup that describes a view that has bindings to properties on the members of the collection that is specified by ItemsSource. + + + + + + + Provides the base initialization for objects derived from the MultiPage<T> class. + + provides two classes that are derived from , and . + + + + Gets an IList<Page> of child elements of the MultiPage. + A IList<Page>. The default is an empty list. + + + The collection of a contains all the children added through the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a , which descends from . + + + + + + + + The object which the default page should be templated from. + Create default provides a default method of creating new pages from objects in a binding scenario. + The newly created page. + Most implementors will not need to use or override CreateDefault. + + + Gets or sets the currently selected page. + The current page. The default value is null. + The default page will usually get set when the multi-page is displayed or templated. + + + Raised when the property changes. + + + + The source for the items to be displayed. + To be added. + To be added. + + + Identifies the property. + To be added. + + + The template for displaying items. + To be added. + To be added. + + + Identifies the bindable property. + + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + The child that was added. + Called when a child has been added to the . + + + + Raises the event. + + + + To be added. + Called when the pages of the have been changed. + To be added. + + + The name of the property that was changed. + Called when a bindable property has changed. + + + + Raised when the children pages of the have changed. + To be added. + + + The currently selected item. + The selected item from the or if nothing selected. + + + + Identifies the bindable property. + + + + To be added. + To be added. + When overriden in a derived class, performs initialization of . + To be added. + + + To be added. + Sets the page that is specified by as the default page. + To be added. + To be added. + + + To be added. + To be added. + Performs initialization of . + To be added. + + + Class that represents a list of property and binding conditions, and a list of setters that are applied when all of the conditions in the list are met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Conditions + + A list of PropertyCondition and/or BindingCondition markup instances that specify the conditions that all must be met before all of the setters that are listed in Setters are applied. + + + + Setters + + A list of setters that are applied when all of the property conditions are met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets the list of conditions that must be satisfied in ordeer for the setters in the list to be invoked. + To be added. + To be added. + + + Gets the list of objects that will be applied when the list of conditions in the property are all met. + To be added. + To be added. + + + Represents pre-defined font sizes. + The exact pixel-value depends on the platform on which Forms runs. + + + The default font size. + + + A Large font size, for titles or other important text elements. + + + A default font size, to be used in stand alone labels or buttons. + + + The smallest readable font size for the device. Think about this like legal footnotes. + + + A small but readable font size. Use this for block of text. + + + Extension methods for and that add strongly-typed FindByName methods. + To be added. + + + To be added. + To be added. + To be added. + Returns the instance of type that has name in the scope that includes . + To be added. + To be added. + + + EventArgs for the NavigationPage's navigation events. + + + + + + + The page that was popped or is newly visible. + + + + + Gets the page that was removed or is newly visible. + + + For , this is the that was removed. For + and it is the newly visible page, the pushed page or the root respectively. + + + + A that manages the navigation and user-experience of a stack of other pages. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + Initializes a new object. + To be added. + + + To be added. + Creates a new element with as its root element. + To be added. + + + Identifies the property associated with the title of the back button. + To be added. + + + Gets or sets the background color for the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar background color. + To be added. + + + Gets or sets the text that appears on the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar text color. + To be added. + + + The that is currently top-most on the navigation stack. + To be added. + To be added. + + + Identifies the property. + + + + The whose back-button's title is being requested. + The title of the back button for the specified . + The title of the back button that would be shown if the specified were the . + To be added. + + + To be added. + Returns a value that indicates whether has a back button. + To be added. + To be added. + + + The being queried. + Returns a value that indicates whether the has a navigation bar. + + if would display a navigation bar were it the . + To be added. + + + The whose title icon is being set. + Retrieves the path to the file providing the title icon for the . + The path to the file providing the title icon for the . + To be added. + + + Backing store for the HasBackButton property. + To be added. + + + Backing store for the HasNavigationBar property. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Asynchronously removes the top from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the top from the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised after a page is popped from this element. + To be added. + + + Event that is raised when the last nonroot element is popped from this element. + To be added. + + + Pops all but the root off the navigation stack. + A task that represents the asynchronous dismiss operation. + To be added. + + + To be added. + A task for asynchronously popping all pages off of the navigation stack. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + To be added. + + + To be added. + To be added. + A task for asynchronously pushing a page onto the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised when a page is pushed onto this element. + To be added. + + + To be added. + To be added. + Sets the title that appears on the back button for . + To be added. + + + To be added. + To be added. + Adds or removes a back button to , with optional animation. + To be added. + + + To be added. + To be added. + Sets a value that indicates whether or not this element has a navigation bar. + To be added. + + + The whose title icon is being set. + The FileImageSource of the icon. + Sets the title icon of the to the icon file at . + + + + + + + + + + + The color to be used as the Tint of the . + To be added. + + Tint is especially important in iOS 7 and later, where the Tint is primary way to specify which controls on screen are active or have an action associated with them. + + + + Identifies the bindable property. + To be added. + + + Indicates the / property. + To be added. + + + To be added. + Provides idiom-specific implementation of T for the current TargetIdiom. + + + + Initializes a new instance of OnIdiom + + + + To be added. + Implicitly converts OnIdiom to T, depending on Device.Idiom. + The value of the Phone or Tablet property, depending on the current Device.Idiom. + + + + Gets or sets the value applied on Phone-like devices. + A T. + + + + Gets or sets the value applied on Tablet-like devices. + A T. + + + + To be added. + Provides the platform-specific implementation of T for the current . + To be added. + + + Creates a new instance of the type. + To be added. + + + The type as it is implemented on the Android platform. + To be added. + To be added. + + + The type as it is implemented on the iOS platform. + To be added. + To be added. + + + To be added. + Casts the type to the version that corresponds to the platform. + To be added. + To be added. + + + The type as it is implemented on the WinPhone platform. + To be added. + To be added. + + + A that displays OpenGL content. + + + s are easiest to program using Shared Projects, in which case the reference to OpenTK is straightforward. The following example shows a simple OpenGL app with a render loop: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + + toggle.Toggled += (s, a) => { + view.HasRenderLoop = toggle.IsToggled; + }; + button.Clicked += (s, a) => view.Display (); + + var stack = new StackLayout { + Padding = new Size (20, 20), + Children = {view, toggle, button} + }; + + Content = stack; + } + } +} + ]]> + + + + + + + + Creates a new object with default values. + To be added. + + + Called prior to rendering. + To be added. + + + Whether this has a custom rendering loop. + To be added. + To be added. + + + Identifies the bindable property. + To be added. + + + Overridden to create a custom rendering loop. + To be added. + + When overridden, creates a custom renderer: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + ]]> + + + + + A that occupies the entire screen. + + + is primarily a base class for more useful derived types. Objects that are derived from the see class are most prominently used as the top level UI element in Xamarin.Forms applications. Typically, application developers will provide such an object to the target platforms by returning it from a static method that the developer created in a project that references . The contents of a typical App.cs file that would appear in a project that reference are shown below: + + +using Xamarin.Forms; + +namespace MyFirstFormsApp +{ + public class App + { + public static Page GetMainPage() + { + return new ContentPage { + Content = new Label { + Text = "Hello, Forms!", + VerticalOptions = LayoutOptions.CenterAndExpand, + HorizontalOptions = LayoutOptions.CenterAndExpand, + } + }; + } + } +} + + While a object was returned in the example above, note that any class that extends could have been passed, instead. For example, by using conditional compilation or by checking the platform, the developr can pass a to Windows Phone applications, in order to better match the style of the user interface on that platform, while passing objects or other Page types to the other platforms. + The other projects in the solution that target the Windows Phone, iOS, and Android platforms can call the GetMainPage method to obtain the descendant that describes the portable user interface. This object can then be used with platform-specific static methods or extension methods to incorporate it into the native UI for each platform. + On all platforms, Application developers must call the method before they get or create any elements. + Each targeted platform uses the returned page in a different way. The Xamarin.Forms.Platform.iOS library provides Xamarin.Forms.Page.CreateViewController() extension method, which returns a UIViewController that application developers can assign to the UIWindow.RootViewController property of the top-level UI. This code is typically placed inside the UIApplicationDelegate.FinishedLaunching override for the main application class. A typical example is shown below: + + +using System; +using Xamarin.Forms; + +namespace MyFirstFormsApp.iOS +{ + [Register("AppDelegate")] + public partial class AppDelegate : UIApplicationDelegate + { + UIWindow window; + + public override bool FinishedLaunching(UIApplication app, + NSDictionary options) + { + Forms.Init(); + + window = new UIWindow(UIScreen.MainScreen.Bounds); + + window.RootViewController = App.GetMainPage().CreateViewController(); + window.MakeKeyAndVisible(); + + return true; + } + } +} + + + + The Xamarin.Forms.Platform.Android.AndroidActivity class provides the Xamarin.Forms.Platform.Android.AndroidActivity.SetPage method, which performs the work that is necessary to make its page argument the top-level UI element of the Xamarin.Forms.Platform.Android.AndroidActivity. A typical example is shown below: + + +using System; +using Android.App; +using Android.OS; +using Xamarin.Forms.Platform.Android; + + +namespace MyFirstFormsApp.Android +{ + [Activity(Label = "MyFirstFormsApp", MainLauncher = true)] + public class MainActivity : AndroidActivity + { + protected override void OnCreate(Bundle bundle) + { + base.OnCreate(bundle); + + Xamarin.Forms.Forms.Init(this, bundle); + + SetPage(App.GetMainPage()); + } + } +} + + + For Windows Phone, provides an extension method for that is called . This method returns a System.Windows.UIElement object that has the page that was passed to it as its current page. A typical example is shown below: + + +using System; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Navigation; +using Microsoft.Phone.Controls; +using Microsoft.Phone.Shell; + +using Xamarin.Forms; + + +namespace MyFirstFormsApp.WinPhone +{ + public partial class MainPage : PhoneApplicationPage + { + public MainPage() + { + InitializeComponent(); + + Forms.Init(); + Content = Phoneword.App.GetMainPage().ConvertPageToUIElement(this); + } + } +} + + In addition to their role as the main pages of applications, objects and their descendants can be used with navigation classes, such as or , among others, to provide rich user experiences that conform to the expected behaviors on each platform. + The class has the following XAML properties: + + + Property + Value + + + BackgroundImage + + A local file specification that identifies an image. + + + + Icon + + A local file specification that identifies an image. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + Title + + Text that represents the title of the page. + + + + ToolbarItems + + A list of ToolBarItem elements. + + + + + + + Creates a new element with default values. + To be added. + + + Indicates that the is about to appear. + To be added. + + + Identifies the image used as a background for the . + To be added. + To be added. + + + Identifies the property. + To be added. + + + Indicates that the is about to cease displaying. + To be added. + + + Title of the displayed action sheet. + Text to be displayed in the 'Cancel' button. + Text to be displayed in the 'Destruct' button. + Text labels for additional buttons. + Displays a native platform action sheet, allowing the application user to choose from several buttons. + An awaitable Task that displays an action sheet and returns the Text of the button pressed by the user. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with a single cancel button. + To be added. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Accept' button. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with an accept and a cancel button. + To be added. + To be added. + + + Forces the to perform a layout pass. + To be added. + + + Resource identifier for the 's associated icon. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Marks the Page as busy. This will cause the platform specific global activity indicator to show a busy state. + A bool indicating if the Page is busy or not. + Setting IsBusy to true on multiple pages at once will cause the global activity indicator to run until both are set back to false. It is the authors job to unset the IsBusy flag before cleaning up a Page. + + + Identifies the property. + To be added. + + + Raised when the layout of the has changed. + To be added. + + + Left-hand side of layout area. + Top of layout area. + Width of layout area. + Height of layout area. + Lays out children s into the specified area. + To be added. + + + When overridden, allows application developers to customize behavior immediately prior to the becoming visible. + To be added. + + + Application developers can override this method to provide behavior when the back button is pressed. + To be added. + To be added. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + + Overriders must call the base method. + + + + To be added. + To be added. + Indicates that the preferred size of a child has changed. + To be added. + + + When overridden, allows the application developer to customize behavior as the disappears. + To be added. + + + Called when the 's property has changed. + To be added. + + + The width allocated to the . + The height allocated to the . + Indicates that the has been assigned a size. + To be added. + + + The space between the content of the and it's border. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Calls . + To be added. + To be added. + + + The 's title. + To be added. + To be added. + + + Identifies the property. + To be added. + + + A set of s, implemented in a platform-specific manner. + To be added. + To be added. + + + Requests that the children s of the update their layouts. + To be added. + + + A control for picking an element in a list. + + The visual representation of a Picker is similar to a , but a picker control appears in place of a keyboard. + The following example shows the creation of a Picker. + + nameToColor = new Dictionary + { + { "Aqua", Color.Aqua }, { "Black", Color.Black }, + { "Blue", Color.Blue }, { "Fuschia", Color.Fuschia }, + { "Gray", Color.Gray }, { "Green", Color.Green }, + { "Lime", Color.Lime }, { "Maroon", Color.Maroon }, + { "Navy", Color.Navy }, { "Olive", Color.Olive }, + { "Purple", Color.Purple }, { "Red", Color.Red }, + { "Silver", Color.Silver }, { "Teal", Color.Teal }, + { "White", Color.White }, { "Yellow", Color.Yellow } + }; + + public PickerDemoPage() + { + Label header = new Label + { + Text = "Picker", + Font = Font.BoldSystemFontOfSize(50), + HorizontalOptions = LayoutOptions.Center + }; + + Picker picker = new Picker + { + Title = "Color", + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + foreach (string colorName in nameToColor.Keys) + { + picker.Items.Add(colorName); + } + + // Create BoxView for displaying picked Color + BoxView boxView = new BoxView + { + WidthRequest = 150, + HeightRequest = 150, + HorizontalOptions = LayoutOptions.Center, + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + picker.SelectedIndexChanged += (sender, args) => + { + if (picker.SelectedIndex == -1) + { + boxView.Color = Color.Default; + } + else + { + string colorName = picker.Items[picker.SelectedIndex]; + boxView.Color = nameToColor[colorName]; + } + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + picker, + boxView + } + }; + + } + } +} +]]> + + The class has the following XAML properties: + + + Property + Value + + + Items + + A local file specification that identifies an image. + + + + SelectedIndex + + An integer, from 0 to 1 less than the count of items that are listed in Items. Currently, this element must be specified in a tag that appears lexically below Items. + + + + Title + + Text that represents the title of the picker. + + + + + + + + + + Initializes a new instance of the Picker class. + + + + Gets the list of choices. + An IList<string> representing the Picker choices. + This property is read-only, but exposes the IList<> interface, so items can be added using Add(). + + + Gets or sets the index of the slected item of the picker. This is a bindable property. + An 0-based index representing the selected item in the list. Default is -1. + A value of -1 represents no item selected. + + + Raised when the value of the SelectIndex property has changed. + To be added. + + + Identifies the SelectedIndex bindable property. + + + + Gets or sets the title for the Picker. This is a bindable property. + A string. + Depending on the platform, the Title is shown as a placeholder, headline, or not showed at all. + + + Identifies the Title bindable property. + + + + Struct defining a 2-D point as a pair of doubles. + To be added. + + + + that specifies a that has the coordinates (, ). + Creates a new object that has coordinates that are specified by the width and height of , in that order. + To be added. + + + The horizontal coordinate. + The vertical coordinate. + Creates a new object that represents the point (,). + To be added. + + + The to which the distance is calculated. + Calculates the distance between two points. + The distance between this and the . + To be added. + + + Another . + Returns if the X and Y values of this are exactly equal to those in the argument. + + if the X and Y values are equal to those in . Returns if is not a . + + The and values of the are stored as s. Developers should be aware of the precision limits and issues that can arise when comparing floating-point values. In some circumstances, developers should consider the possibility of measuring approximate equality using the (considerably slower) method. + + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Whether both X and Y are 0. + + if both and are 0.0. + To be added. + + + The amount to add along the X axis. + The amount to add along the Y axis. + Returns a new that translates the current by and . + A new at [this.X + dx, this.Y + dy]. + To be added. + + + The to which is being added. + The values to add to . + Returns a new by adding a to a . + A new at [pt.X + sz.Width, pt.Y + sz.Height]. + To be added. + + + A to be compared. + A to be compared. + Whether the two s are equal. + + if the two s have equal values. + To be added. + + + The to be translated as a . + Returns a new whose and and equivalent to the 's and properties. + A new based on the . + To be added. + + + A to be compared. + A to be compared. + Whether two points are not equal. + + if and do not have equivalent X and Y values. + To be added. + + + The from which is to be subtracted. + The whose and will be subtracted from 's and . + Returns a new by subtracting a from a . + A new at [pt.X - sz.Width, pt.Y - sz.Height]. + To be added. + + + Returns a new whose and have been rounded to the nearest integral value. + A new whose and have been rounded to the nearest integral value, per the behavior of Math.Round(Double). + To be added. + + + A human-readable representation of the . + The string is formatted as "{{X={0} Y={1}}}". + To be added. + + + Location along the horizontal axis. + To be added. + To be added. + + + Location along the vertical axis. + To be added. + To be added. + + + The at {0,0}. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that displays progress. + + The following example shows the usage of a ProgressBar. + + + + + + + The class has the following XAML property: + + + Property + Value + + + Progress + + A decimal value between 0 and 1, inclusive, that specifies the fraction of the bar that is colored. + + + + + + + Initializes a new instance of the ProgressBar class + + + + Gets or sets the progress value. This is s bindable property. + Gets or sets a value that specifies the fraction of the bar that is colored. + Values less than 0 or larger than 1 will be clamped to the range [0-1]. + + + Identifies the Progress bindable property. + + + + To be added. + To be added. + To be added. + Animate the Progress property to value. + A Task<bool> you can await on. + + + + Event arguments for the delegate. + To be added. + + + To be added. + Creates a new object that indicates that is changing. + To be added. + + + Gets the name of the property that is changing. + The name of the property that is changing. + To be added. + + + To be added. + To be added. + Delegate for the event. + To be added. + + + Class that represents a value comparison with a property. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to check. + + + + Value + + The value for which the condition is met. + + + + + + + Initializes a new instance. + To be added. + + + Gets or sets the property against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Provides a value by using the supplied service provider. + To be added. + To be added. + + + Struct defining a rectangle, using doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + Where Xamarin.Forms supports XAML for structures, app devs can represent the rectangle as a comma-separated list of the X-coordinate, Y-Coordinate, Width, and Height. + + + + To be added. + To be added. + Creates a new object with its top left corner at with a height and width that are specified by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with its top left corner at (, ) and wide and tall. + To be added. + + + The bottom of the . + To be added. + + Modifying this value also modifies the property. + + + + The halfway between and , and . + To be added. + To be added. + + + The being checked for containment. + Whether the is within, or along the periphery, of this . + + if is within, or along the periphery, of this. + To be added. + + + The being checked for containment. + Whether is entirely within, or along the periphery, of this . + + if the borders of are entirely within, or along the periphery, of this. + To be added. + + + The X location of the point being checked. + The Y location of the point being checked. + Whether the point described by and is within, or along the periphery of, this . + + if the point described by and is within, or along the periphery of, this. + To be added. + + + An Object to compare to this. + Whether an is a and has exactly the same values as this. + + if is a that has exactly the same values as this. + To be added. + + + The being compared to this. + Whether a has exactly the same values as this. + + if has exactly the same values as this. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Factory method to create a from , , , and . + A new whose values are equal to the arguments. + To be added. + + + The hashcode for the . + A value optimized for fast insertion and retrieval in a hash-based data structure. + To be added. + + + Extent along the Y axis. + To be added. + + Modifying this value modifies the property.. + + + Values to inflate all the borders. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by 's and whose and are inflated by 's . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in each dimension by twice . + + + + + + + Value to shift to the left and to the right. + Value to shift upward and downward. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by and whose and are inflated by . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in X by twice and larger in Y by twice . + + + + + + + A this will be intersected with. + A new that is the intersection of this and . + Returns a new that is the intersection of this and , or if there is no intersection. + To be added. + + + A being intersected. + A being intersected. + A new that is the intersection of and . + Returns a new that is the intersection of and , or if there is no intersection. + To be added. + + + The being intersected. + Whether this intersects . + + if this intersects . + To be added. + + + Whether this has either or less than or equal to 0. + + if either or is less than or equal to 0. + To be added. + + + The position of the on the X axis. + To be added. + To be added. + + + The defined by and . + To be added. + To be added. + + + A whose X and Y values should be added to this's . + A new whose is offset by . + A new whose is equal to this's translated by . + To be added. + + + Change along the X axis. + Change along the Y axis. + A new whose is offset by and . + A new whose is equal to this's translated by and . + To be added. + + + A being compared. + A being compared. + Whether two s have equal values. + + if both the and of the two rectangles are equivalent. + To be added. + + + A being compared. + A being compared. + Whether two s have unequal values. + + if either the or of the two rectangles have differences. + To be added. + + + The furthest extent along the X axis. + To be added. + To be added. + + + Returns a new whose values have been rounded to their nearest integral value. + A new whose , , , and have been rounded to their nearest integral values. + + The rounding is applied to each property independently. + + + + The extent of the along its X and Y axes. + To be added. + To be added. + + + The top of the . + To be added. + To be added. + + + A human-readable description of the . + The format is "{X={0} Y={1} Width={2} Height={3}}". + To be added. + + + The whose union is being calculated. + A new whose bounds cover the union of this and . + Returns a new whose bounds cover the union of this and . + To be added. + + + A whose union is being calculated. + A whose union is being calculated. + A new whose bounds cover the union of and . + Returns a new whose bounds cover the union of and . + To be added. + + + The extent of this along the X axis. + To be added. + To be added. + + + The position of this on the X axis. + To be added. + To be added. + + + The position of this on the Y axis. + To be added. + To be added. + + + The at {0,0} whose Size is {0,0}. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that uses s to layout its children. + + The RelativeLayoutExample class in the following code extends the class by adding a that contains a heading and another label. Both labels are positioned relative to the : + + { + return 0; + })); + + relativeLayout.Children.Add (relativelyPositioned, + Constraint.RelativeToParent ((parent) => { + return parent.Width / 3; + }), + Constraint.RelativeToParent ((parent) => { + return parent.Height / 2; + })); + this.Content = relativeLayout; + } +} +]]> + + For a more complete example that exercises many more of the layout options for the class, see the FormsGallery sample that can be found on the Sample Applications page. + The class has the following XAML attached properties: + + + AttachedProperty + Value + + + XConstraint + + XAML markup extension for a constraint expression. See . + + + + YConstraint + + XAML markup extension for a constraint expression. See . + + + + WidthConstraint + + XAML markup extension for a constraint expression. See . + + + + HeightConstraint + + XAML markup extension for a constraint expression. See . + + + + + + + Creates a new with default values. + To be added. + + + Identifies the bindable property associated with /. + To be added. + + + List of s that are children of this . + To be added. + To be added. + + + The for which the bounds constraint is being requested. + Returns the bounds constraint of the . + The of the . + To be added. + + + The for which the height constraint is being requested. + Returns the height constraint of the . + The on the height of the . + To be added. + + + The for which the width constraint is being requested. + Returns the width constraint of the . + The on the width of the . + To be added. + + + The for which the X constraint is being requested. + Returns the X constraint of the . + The on the X position of the . + To be added. + + + The for which the Y constraint is being requested. + Returns the Y constraint of the . + The on the Y position of the . + To be added. + + + Identifies the bindable property associated with the / methods. + To be added. + + + The left-side bound of the rectangle into which the children will be laid out. + The top bound of the rectangle into which the children will be laid out. + The width of the rectangle into which the children will be laid out. + The height of the rectangle into which the children will be laid out. + Lays out the in the specified rectangle. + To be added. + + + The added to the . + Called when a is added to the collection. + To be added. + + + The removed from the collection. + Called when a is removed from the collection. + To be added. + + + To be added. + To be added. + Called when this has received a size request. + To be added. + To be added. + + + The to which the constraint will be applied. + The on the . + Sets as a constraint on the bounds of . + To be added. + + + Identifies the width constraint. + To be added. + + + Identifies the constraint on X. + To be added. + + + Identifies the constraint on Y. + To be added. + + + To be added. + An of s used by a . + To be added. + + + To be added. + To be added. + Constrains to and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains to the rectangle that is defined by , , , and , and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains by , , , and , and adds it to the layout. + To be added. + + + Associate view with renderer. + Lazily assoicate a view with it's renderer. + + + The view to render. + The view to render. + The view to render. + + + The renderer for this view. + The renderer for this view. + The renderer for this view. + + + An IDictionary that maps identifier strings to arbitrary resource objects. + To be added. + + + Creates a new empty object. + To be added. + + + To be added. + + Add an implicit Style to the ResourceDictionary. Implicit Styles are applied to all VisualElements matching TargetType in the descendants of this ResourceDictionary owner, unless a Style is explicitely applied to the Element. + + Implicit Styles are added to a ResourceDictionary in XAML by not specifying an x:Key for the Element. + + To be added. + + + The identifier to be used to retrieve the . + The associated with the . + Adds and to the as a key-value pair. + To be added. + + + Empties the . + To be added. + + + The identifier being searched for. + Whether the contains a key-value pair identified by . + To be added. + To be added. + + + The number of entries in the . + To be added. + To be added. + + + Returns a of the 's s. + To be added. + To be added. + + + The identifier of the desired object. + Retrieves the value associated with the key . + To be added. + To be added. + + + The collection of identifier s that are keys in the . + To be added. + To be added. + + + The identifier of the key-value pair to be removed. + Removes the key and value identified by from the . + + if the key existed and the removal was successful. + To be added. + + + To be added. + Adds an item to the collection. + To be added. + + + To be added. + Returns a value that indicates whether the dictionary contains the value in , indexed by the key in . + To be added. + To be added. + + + To be added. + To be added. + Copies the values in the dictionary to , starting at position in . + To be added. + + + Gets a value that indicates whether the resource dictionary is read-only. + To be added. + To be added. + + + To be added. + Removes the value in , indexed by the key in , from the dictionary, if present. + To be added. + To be added. + + + Returns a of the 's s. + An of the 's s. + To be added. + + + The identifier of the object to be retrieved. + An reference to the object being retrieved, or it's default value. + Retrieves the object specified by or, if not present, the default value of . + The object specified by or, if not present, the default value of . + To be added. + + + Retrieves the values of the . + To be added. + To be added. + + + An that defines properties for a row in a . + + The class has the following XAML property: + + + Property + Value + + + Height + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute height. + + + + + App developers can specify values for the property in XAML. This is typically done inside tags for the collection property. The following example demonstrates setting three row heights to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Gets or sets the height of the row. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the size of the row is changed. + To be added. + + + A for s. + To be added. + + + Creates a new empty object. + To be added. + + + Enumeration specifying vertical or horizontal scrolling directions. + To be added. + + + Scroll Horizontally. + + + Scroll vertically. + + + Enumerates values that describe a scroll request. + To be added. + + + Scroll to the center of a list. + + + Scroll to the end of a list. + + + Scroll to make a specified list item visible. + + + Scroll to the start of a list. + + + An element capable of scrolling if its Content requires. + + The following example shows the creation of a ScrollView with a large in it. + + + + Application developers should not nest one within another. Additinoally, they should refrain from nesting them other elements that can scroll, such as . + + + + The class has the following XAML properties: + + + Property + Value + + + Content + + Markup that specifies a to display in the . + + + + Orientation + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance of the ScrollView class. + + + + Gets or sets a to display in the . + The that is displayed. + + + + Gets the size of the Content. This is a bindable property. + A that represents the size of the content. + + + + Identifies the ContentSize bindable property. + This bindable property is read-only. + + + A value that represents the x coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + Positions and sizes the content of a ScrollView. + + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + + A which contains the desired size of the element. + + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the scrolling direction of the ScrollView. This is a bindable property. + + + + + Identifies the Orientation bindable property. + + + + A control that provides a search box. + + The following example shows a basic use. + + >(); + resultsLabel.Text = ""; + + // Get Xamarin.Forms assembly. + Assembly xamarinFormsAssembly = typeof(View).GetTypeInfo().Assembly; + + // Loop through all the types. + foreach (Type type in xamarinFormsAssembly.ExportedTypes) + { + TypeInfo typeInfo = type.GetTypeInfo(); + + // Public types only. + if (typeInfo.IsPublic) + { + // Loop through the properties. + foreach (PropertyInfo property in typeInfo.DeclaredProperties) + { + // Check for a match + if (property.Name.Equals(searchText)) + { + // Add it to the list. + list.Add(Tuple.Create(type, property.PropertyType)); + } + } + } + } + + if (list.Count == 0) + { + resultsLabel.Text = + String.Format("No Xamarin.Forms properties with " + + "the name of {0} were found", + searchText); + } + else + { + resultsLabel.Text = "The "; + + foreach (Tuple tuple in list) + { + resultsLabel.Text += + String.Format("{0} type defines a property named {1} of type {2}", + tuple.Item1.Name, searchText, tuple.Item2.Name); + + if (tuple != list.Last()) + { + resultsLabel.Text += "; and the "; + } + } + + resultsLabel.Text += "."; + } + } + } +}]]> + + + + + The class has the following XAML properties: + + + Property + Value + + + CancelButtonColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + + The default text that will appear in the search bar when it is empty. + + + + SearchCommand + + XAML markup extension that describes a binding to a command. + + + + SearchCommandParameter + + The parameter for the search command. + + + + Text + + The initial text that will appear in the search bar. + + + + + + + Creates a new . + To be added. + + + Gets or sets the color of the cancel button. + To be added. + To be added. + + + Backing store for the CancelButtonColor property. + To be added. + + + Gets or sets the text that is displayed when the is empty. + The text that is displayed when the is empty. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the user presses the Search button. + To be added. + + + Gets or sets the command that is run when the user presses Search button. + The command that is run when the user presses Search button. + To be added. + + + Gets or sets the parameter that is sent to the . + The parameter that is sent to the . + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets the text that is displayed in the . + The text that is displayed in the . + To be added. + + + Event that is raised when the property is changed. For example, this event is raised as the user edits the text in the SearchBar. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + Creates a new event that indicates that the user has selected . + To be added. + + + Gets the new selected item. + To be added. + To be added. + + + Represents an assignment of a property to a value, typically in a style or in response to a trigger. + + Setters are used with triggers and styles. + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to set. + + + + Value + + The value to apply to the property. + + + + + + + Creates a new object. + To be added. + + + The property on which to apply the assignment. + To be added. + + Only bindable properties can be set with a .. + + + The value to assign to the property. + To be added. + To be added. + + + To be added. + + + + To be added. + To be added. + + + Defines extensions methods for IList<Setter> + + + + + + To be added. + To be added. + To be added. + Add a Setter with a value to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a Binding to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a DynamicResource to the IList<Setter> + To be added. + + + Struct defining height and width as a pair of doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + + + + To be added. + To be added. + Creates a new object with and . + To be added. + + + The object to which this is being compared. + Whether this is equivalent to . + + if is a whose values are identical to this's and . + To be added. + + + The to which this is being compared. + Whether this is equivalent to . + + if 's values are identical to this's and . + To be added. + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Magnitude along the vertical axis, in platform-specific units. + To be added. + To be added. + + + Whether the has and of 0.0. + + if both and are 0.0. + To be added. + + + A to be added. + A to be added. + Returns a new whose and are the sum of the component's height and width. + A whose is equal to s1.Width + s2.Width and whose is equal to sz1.Height + sz2.Height. + To be added. + + + A to be compared. + A to be compared. + Whether two s have equal values. + + if and have equal values for and . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + The to be converted to a . + Returns a new based on a . + A whose and are equal to 's and , respectively. + To be added. + + + To be added. + To be added. + Whether two s have unequal values. + + if and have unequal values for either or . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + A to be scaled. + A factor by which to multiple 's and values. + Scales both and . + A new whose and have been scaled by . + To be added. + + + A from whose values a size will be subtracted. + The to subtract from . + Returns a new whose and are 's height and width minus the values in . + A whose is equal to s1.Width - s2.Width and whose is equal to sz1.Height - sz2.Height. + To be added. + + + Returns a human-readable representation of the . + The format has the pattern "{Width={0} Height={1}}". + To be added. + + + Magnitude along the horizontal axis, in platform-defined units. + To be added. + To be added. + + + The whose values for height and width are 0.0. + To be added. + + + Struct defining minimum and maximum s. + To be added. + + + To be added. + Creates a new object with default values. + To be added. + + + To be added. + To be added. + Creates a new object that requests at least the size , but preferably the size . + To be added. + + + The minimum acceptable size. + To be added. + To be added. + + + The requested size. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + A control that inputs a linear value. + + + + + The class has the following XAML properties: + + + Property + Value + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + + + + Initializes a new instance of the Slider class. + + The following example shows a basic use. + + + + + + + The minimum selectable value. + The maximum selectable value. + The actual value. + Initializes a new instance of the Slider class. + + + + Gets or sets the maximum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Maximum bindable property. + + + + Gets or sets the minimum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Minimum bindable property. + + + + Gets or sets the current value. This is a bindable property. + A double. + + + + The ValueChanged event is fired when the Value property changes. + + + + Identifies the Value bindable property. + + + + Represents a part of a FormattedString. + To be added. + + + Initialize a new instance of the Span class. + To be added. + + + Gets or sets the Color of the span background. + To be added. + Not supported on WindowsPhone. + + + Gets or sets the Font for the text in the span. + To be added. + To be added. + + + Gets a value that indicates whether the font for the span is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which the font for the text in the span belongs. + To be added. + To be added. + + + Gets the size of the font for the text in the span. + To be added. + To be added. + + + Gets or sets the Color for the text in the span. + To be added. + To be added. + + + Event that is raised when a property is changed. + To be added. + + + Gets or sets the text of the span. + To be added. + To be added. + + + A that positions child elements in a single line which can be oriented vertically or horizontally. + + Because layouts override the bounds on their child elements, application developers should not set bounds on them. + + The following example code, adapted from the FormsGallery example shows how to create a new with children that explore many of the layout behaviors of : + + + + + + The class has the following XAML properties: + + + Property + Value + + + Orientation + + + Horizontal or Vertical. The default is Vertical. + + + + Spacing + + An integer or decimal. + + + + + + + Initializes a new instance of the StackLayout class. + + + The following example shows the initialization of a new StackLayout and setting its orientation and children. + + + + + + + + To be added. + To be added. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a StackLayout. + Implementors wishing to change the default behavior of a StackLayout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The available width for the StackLayout to use. + The available height for the StackLayout to use. + This method is called during the measure pass of a layout cycle to get the desired size of the StackLayout. + A which contains the desired size of the StackLayout. + The results of this method will be a sum of all the desired sizes of its children along the orientation axis, and the maximum along the non-orientation axis. + + + Gets or sets the value which indicates the direction which child elements are positioned. + A which indicates the direction children layouts flow. The default value is Vertical. + Setting the Orientation of a StackLayout triggers a layout cycle if the stack is already inside of a parent layout. To prevent wasted layout cycles, set the orientation prior to adding the StackLayout to a parent. + + + Identifies the Orientation bindable property. + + + + Gets or sets a value which indicates the amount of space between each child element. + A value in device pixels which indicates the amount of space between each element. The default value is 6.0. + + + Setting this value triggers a layout cycle if the StackLayout is already in a parent Layout. + + + The following example sets the Spacing on construction of a StackLayout. + + + + + + + + Identifies the Spacing bindable property. + + + + The orientations the a StackLayout can have. + + + + StackLayout should be horizontally oriented. + + + StackLayout should be vertically oriented. + + + A control that inputs a discrete value, constrained to a range. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + Increment + + An integer or decimal literal. + + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + ValueChanged + The name of an event handler. Note that this tag must appear below Value. + + + + + + Initializes a new instance of the Stepper class. + To be added. + + + The minimum selectable value. + The maximum selectable value. + The current selected value. + The increment by which Value is increased or decreased. + Initializes a new instance of the Stepper class. + To be added. + + + Gets or sets the increment by which Value is increased or decreased. This is a bindable property. + A double. + + + + Identifies the Increment bindable property. + To be added. + + + Gets or sets the maximum selectable value. This is a bindable property. + A double. + To be added. + + + Identifies the Maximum bindable property. + To be added. + + + Gets or sets the minimum selectabel value. This is a bindable property. + A double. + To be added. + + + Identifies the Minimum bindable property. + To be added. + + + Gets or sets the current value. This is a bindable property. + A double. + To be added. + + + Raised when the property changes. + To be added. + + + Identifies the Value bindable property. + To be added. + + + + that loads an image from a . + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed.. + To be added. + + + Gets or sets the delegate responsible for returning a for the Image. + + + + + Backing store for the property. + To be added. + + + Class that contains triggers, setters, and behaviors that completely or partially define the appearance and behavior of a class of visual elements. + + The class has the following XAML properties: + + + Property + Value + + + BasedOn + + A StaticResource markup extension that names the style on which this style is based. + + + + BaseResourceKey + + A resource dictionary key that names a dynamic base style. + + + + Behaviors + + Markup for the behaviors that are associated with the style. + + + + Setters + + A list of setters containing Property and Value elements or attributes. + + + + TargetType + + The name of the type that the style is intended for. + + + + Triggers + + A list of triggers. + + + + + + + To be added. + Intitializes a new instance. + To be added. + + + The on which this is based. + To be added. + The supports a mechanism in XAML that is similar to inheritance in C#. + + + Gets or sets the key that identifies the on which this is based. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the type of object that this style can describe. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + A control that provides a toggled value. + + The following example describes a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + IsToggled + + + true or false, to indicate whether the switch has been toggled. + + + + Toggled + + The name of an event handler. Note that this tag must appear below IsToggled. + + + + + + + Creates a new element with default values. + To be added. + + + Gets or sets a Boolean value that indicates whether this element is toggled. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when this is toggled by the user. + To be added. + + + A with a label and an on/off switch. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + On + + + true or false, to indicate whether the switch cell is in the "on" position. + + + + OnChanged + + The name of an event handler. Note that this tag must appear below On. + + + + Text + + Text that represents the title of the switch cell. + + + + + + + Initializes a new instance of the SwitchCell class. + To be added. + + + Gets or sets the state of the switch. This is a bindable property. + Default is . + To be added. + + + Triggered when the switch has changed value. + To be added. + + + Identifies the bindable property. + To be added. + + + Gets or sets the text displayed next to the switch. This is a bindable property. + + To be added. + + + Identifies the Text bindable property. + To be added. + + + + that displays an array of tabs across the top of the screen, each of which loads content onto the screen. + + The user interface of a tabbed page consists of a list of items across the top of the screen, and a larger detail area below. The user can scroll the collection of tabs that are across the top of the screen if that collection is too large to fit on one screen. App developers can create tabbed pages in either of two ways. First, application developers can assign a list of objects of a single class, or its subclasses, to the property and assign a to the property to return pages for objects of the least derived type. Second, app developers can add a succession of objects to the property. Both methods are shown in the code examples below. + + The following example code, adapted for brevity from the FormsGallery sample that can be found on the Sample Applications page, shows how to display data of a specific type by assigning a to the property. Note how NamedColorPage gets its color by binding its field. + { + return new NamedColorPage (); + }); + } + } + + // Data type: + class NamedColor + { + public NamedColor (string name, Color color) + { + this.Name = name; + this.Color = color; + } + + public string Name { private set; get; } + + public Color Color { private set; get; } + + public override string ToString () + { + return Name; + } + } + + // Format page + class NamedColorPage : ContentPage + { + public NamedColorPage () + { + // This binding is necessary to label the tabs in + // the TabbedPage. + this.SetBinding (ContentPage.TitleProperty, "Name"); + // BoxView to show the color. + BoxView boxView = new BoxView { + WidthRequest = 100, + HeightRequest = 100, + HorizontalOptions = LayoutOptions.Center + }; + boxView.SetBinding (BoxView.ColorProperty, "Color"); + + // Build the page + this.Content = boxView; + } + } +} + + +]]> + + + The example below creates a tabbed view with two instances. + + + + + + + + + Creates a new element with default values. + To be added. + + + An object for which to create a default page. + Creates a default page, suitable for display in this page, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Called when the parent is set. + This method iterates up the hierarchy and writes a message to the debug listeners if it detects a . Application developers are advised that adding a to a may produce undesirable results. + + + TableIntent provides hints to the renderer about how a table will be used. + Using table intents will not effect the behavior of a table, and will only modify their visual appearance on screen, depending on the platform. Not all intents are unique on all platforms, however it is advisable to pick the intent which most closely represents your use case. + + + A table intended to contain an arbitrary number of similar data entries. + + + A table which is used to contain information that would normally be contained in a form. + + + A table intended to be used as a menu for selections. + + + A table containing a set of switches, toggles, or other modifiable configuration settings. + + + A that contains either a table section or the entire table. + To be added. + + + Constructs and initializes a new instance of the class. + To be added. + + + The title of the table. + Constructs and initializes a new instance of the class with a title. + To be added. + + + A logical and visible section of a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new with the title . + To be added. + + + Abstract base class defining a table section. + + + + + The class has the following XAML property: + + + Property + Value + + + Title + + A title for the section. + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Creates a new object with the specified . + To be added. + + + Gets or sets the title. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + + Table section that contains instances of type T that are rendered by Xamarin.Forms. + + + Sections are used to group cells in the screen and they are the + only valid direct child of the . Sections can contain + any of the standard s, including new s. + + + s embedded in a section are used to navigate to a new + deeper level. + + + You can assign a header and a footer either as strings (Header and Footer) + properties, or as Views to be shown (HeaderView and FooterView). Internally + this uses the same storage, so you can only show one or the other. + + Subtypes of are and , as shown in the following diagram: + + + + + + + + Constructs a new instance with an empty title. + + To be added. + + + To be added. + + Constructs a new instance with the specified . + + To be added. + + + The items to add. + Adds a list of items to this object. + To be added. + + + The item to add. + Adds an item to this object. + To be added. + + + Removes all items in this . + To be added. + + + Event that is raised when one or more items is added to or removed from this object. + To be added. + + + The object for which to determine whether or not this object has a reference. + Returns a Boolean value that indicates whether or not this has a reference to a particular object. + + if this object contains a reference to . Otherwise, . + To be added. + + + To be added. + To be added. + Copies the elements of the current collection to an , starting at the specified index. + To be added. + + + Gets the number of items in this object. + The number of items in this object. + To be added. + + + Returns an enumerator that iterates through the items in this object. + To be added. + To be added. + + + The instance for which to find its index. + Returns the index of the first occurrence of in this object. + The index of the first occurrence of in this object. + To be added. + + + The position at which to insert . + The item to insert. + Inserts an item into this object at the specified position. + To be added. + + + The location of the item to return. + Returns the item that is stored at the location in this object that is specified by . + To be added. + To be added. + + + Calls the method, passing the new binding context, on each of the items in this object. + To be added. + + + To be added. + Removes a specified item from this object. + + , if item was removed from the current collection; if item was not found in the current collection.. + To be added. + + + The position in this object from which to remove an item. + Removes a specified item from this object at the position that is specified by . + To be added. + + + Returns ; The collection of objects in this can be changed. + + ; The collection of objects in this object can be changed. + To be added. + + + Returns an enumerator that iterates through the collection of objects in this object. + To be added. + To be added. + + + A that holds rows of elements. + + A has a as its property. The is a type of . + The following example shows a basic table with two sections. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasUnevenRows + + + true or false, to indicate whether rows in the table view will specify their own height. + + + + Intent + + + Data, Form, Menu, or Settings. + + + + RowHeight + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the rows that are contained in this can have uneven rows. + To be added. + + When the property is , application developers can set the properties to control the height of items in the table. When the property is , the property is ignored. When the property is , app developers can set the property to set the height of all Cells, and their individual properties are ignored. + + + + Backing store for the HasUnevenRows property. + To be added. + + + Gets or sets the intent of the table. + To be added. + To be added. + + + Method that is called when the binding context changes. + To be added. + + + Method that is called when the model changes. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made. + To be added. + To be added. + + + Gets or sets the root of the table. + To be added. + To be added. + + + Gets or sets the row height. + To be added. + To be added. + + + Backing store for the row height property. + To be added. + + + Provides tap gesture recognition and events. + Can be used to recognize single and multiple tap gestures. + + + Initializes a new instance of a TapGestureRecognizer object. + + + + An action whose first argument is the View the recognizer is associated with and whose second argument is the callback parameter. + Initializes a new instance of a TapGestureRecognizer object with a parameterized callback. + + + + An action whose first argument is the View the recognizer is associated with. + Initializes a new instance of a TapGestureRecognizer object with a callback. + + + + The Command to invoke when the gesture has been triggered by the user. This is a bindable property. + To be added. + The object passed to the Command will be the contents of + + + An object to be passed to the TappedCallback. This is a bindable property. + To be added. + To be added. + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + The number of taps required to trigger the callback. This is a bindable property. + The number of taps to recognize. The default value is 1. + + + + Identifies the NumberOfTapsRequired bindable property. + To be added. + + + Event that is raised when the user taps. + To be added. + + + The action to invoke when the gesture has been triggered by the user. This is a bindable property. + An action that will be invoked. + The object passed to the callback will be the contents of . + + + An object to be passed to the TappedCallback. This is a bindable property. + An object. + The primary use case for this property is Xaml bindings. + + + Identifies the TappedCallbackParameter bindable property. + + + + Identifies the TappedCallback bindable property. + + + + Arguments for the event. + To be added. + + + To be added. + Creates a new object with the supplied parameter. + To be added. + + + Gets the parameter object for this object. + To be added. + To be added. + + + Indicates the type of device Forms is working on. + + + + (Unused) Indicates that Forms is running on a computer. + + + Indicates that Forms is running on a Phone, or a device similar in shape and capabilities. + + + Indicates that Forms is running on a Tablet. + + + (Unused) Indicates that Forms is running on an unsupported device. + + + Indicates the kind of OS Forms is currently working on. + + + + Indicates that Forms is running on a Google Android OS. + + + Indicates that Forms is running on an Apple iOS OS. + + + (Unused) Indicates that Forms is running on an undefined platform. + + + Indicates that Forms is running on a Microsoft WinPhone OS. + + + Extension class for DataTemplate, providing a string-based shortcut method for defining a Binding. + To be added. + + + To be added. + To be added. + To be added. + Binds the object's to a new instance that was created with . + To be added. + + + Represents vertical and horizontal text alignement. + This affects the way the text is diaplayed inside of its control bounds. + + + Center-aligned text. + + + End-flushed text. It means right-aligned (resp: bottom-aligned) for horizontal (resp vertical) alignemnt. + + + Start-flushed text. It means left-aligned (resp: top-aligned) for horizontal (resp vertical) alignemnt. + + + + A with primary and text. + + + The following example shows a basic use. + + + + + + + + + + Initializes a new instance of the TextCell class. + + + + Gets or sets the ICommand to be executed when the TextCell is tapped. This is a bindable property. + + Setting the Command property has a side effect of changing the Enabled property depending on ICommand.CanExecute. + + + Gets or sets the parameter passed when invoking the Command. This is a bindable property. + + + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + Gets or sets the secondary text to be displayed in the TextCell. This is a bindable property. + + + + + Gets or sets the color to render the secondary text. This is a bindable property. + The color of the text. Color.Default is the default color value. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. + + + Identifies the DetailColor bindable property. + + + + Gets or sets the secondary text to be displayed. This is a bindable property. + + + + Invoked whenever the Cell is Tapped. + Overriden for TextCell. + + + Gets or sets the primary text to be displayed. This is a bindable property. + + + + + Gets or sets the color to render the primary text. This is a bindable property. + The color of the text. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. Color.Default is the default color value. + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + Event arguments for TextChanged events. Provides old and new text values. + To be added. + + + To be added. + To be added. + Creates a new with and . + To be added. + + + Gets the new text value. + To be added. + To be added. + + + Gets the old text value. + To be added. + To be added. + + + Struct defining thickness around the edges of a using doubles. + To be added. + + + To be added. + Creates a new object that represents a uniform thickness of size . + To be added. + + + To be added. + To be added. + Creates a new object that has a horizontal thickness of and a vertical thickness of . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with thicknesses defined by , , , and . + To be added. + + + The thickness of the bottom of a rectangle. + To be added. + To be added. + + + A to be compared. + Whether the is a with equivalent values. + + if is a and has equivalent values.. + To be added. + + + A has value for this . + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + The thickness of the left side of a rectangle. + To be added. + To be added. + + + A to be compared. + A to be compared. + Whether two es have identical values. + + if and have identical values for ,, , and . + To be added. + + + The value for the uniform Thickness. + Implicit cast operator from . + A Thickness with an uniform size. + + Application developers should bear in mind that and are the sums of their components, so a created from a of, for instance, 1.0, will have of 2.0. + + + + A to convert to a + Converts a into a . + To be added. + + The 's and are both set equal to the 's and the 's and are both set equal to the 's . + + + + A to be compared. + A to be compared. + Whether the values of two 's have at least one difference. + + if any of the ,, , and values differ between and . + To be added. + + + The thickness of the right side of a rectangle. + To be added. + To be added. + + + The thickness of the top of a rectangle. + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that provides time picking. + + The visual representation of a TimePicker is very similar to the one of , except that a special control for picking a time appears in place of a keyboard. + + The following example shows declaration of a TimePicker with a default time set. + + + + + + + + + + + Initializes a new TimePicker instance. + + + + The format of the time to display to the user. This is a bindable property. + A valid time format string. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format bindable property. + + + + Gets or sets the displayed time. This is a bindable property. + The displayed in the TimePicker. + To be added. + + + Identifies the Time bindable property. + + + + Event arguments for and events. + To be added. + + + To be added. + Creates a new that indicates that the toggle control was toggled to . + To be added. + + + Gets the Boolean value to which the toggle control was toggled. + To be added. + To be added. + + + An item in a toolbar or displayed on a . + + Any changes made to the properties of the toolbar item after it has been added will be ignored. + Windows Phone ApplicationBarButtons and MenuItems always display an associated text. Therefore, when developing for Windows Phone, application devs should provide a value for the property. Otherwise, the file name of the icon image will be dixplayed as the text of the . (For example, the user might see "menu.png" in the user interface.) + + + + Constructs and initializes a new instance of the class. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constructs and initializes a new instance of the class. + + + + Raised when the is touched or clicked. + + + + Gets or sets the to be invoked on activation. + The to be invoked on activation. + + + + Gets or sets the parameter to pass to the that is invoked on activation. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets a string that identifies the image that is displayed on this element. + To be added. + To be added. + + + Gets or sets the name of the . + The name of the toolbar item.. + + + + Gets or sets a value that indicates on which of on the primary, secondary, or default toolbar surfaces to display this element. + To be added. + To be added. + + + Gets or sets the priority of this element. + To be added. + To be added. + + + Gets or sets the toolbar to which this element belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying whether the appears on the primary toolbar surface or secondary. + To be added. + + + Use the default choice for the toolbar item. + + + Place the toolbar item on the primary toolbar surface. + + + Place the toolbar item on the secondary toolbar surface. + + + Class that represents a property condition and an action that is performed when the condition is met. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the property whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the property that is named by becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the property, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + This property supports XAML infrastructure and is not intended to be directly used by application developers. + To be added. + To be added. + + + A base class for user-defined actions that are performed when a trigger condition is met. + Application developers should use , instead. + + + The type of the objects with which this can be associated. + Creates a new instance of the TriggerAction class. + + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to provide the behavior that is triggered. + To be added. + + + The type of which the property must be an instance. + A generic base class for user-defined actions that are performed when a trigger condition is met. + + + + Creates a new instance of the class. + + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + Base class for classes that contain a condition and a list of actions to perform when the condition is met. + + + + Gets the list of objects that will be invoked when the trigger condition is met. Ignored for the class. + + + + + Gets the list of objects that will be invoked after the trigger condition is no longer met. Ignored for the class. + + + + + Gets a value that indicates whether or not the trigger is sealed. + To be added. + A trigger becomes sealed when its method is called. Once it is sealed, its and lists become readonly. + + + The type of object to which this object can be attached. + To be added. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + This method throws an exception if is not an instance of . In that case, the method is not called. + + + To be added. + Attempts to detach from . If successful, calls .. + This method throws an exception if is . In that case, the method is not called. + + + Abstract base class whose subclasses can convert values between different types. + + The following diagram shows subclasses of . + + + + + + + Creates a new object. + To be added. + + + To be added. + When implemented in a derived class, returns a Boolean value that indicates whether or not the derived type converter can convert to its target type. + To be added. + To be added. + + + To be added. + Calls with the current culture information and . + To be added. + To be added. + + + To be added. + To be added. + When implemented in a derived class, converts an object that is a version of and that can be cast to the target type. + To be added. + To be added. + + + Attribute that specifies the type of used by its target. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new object that specifies that the class it decorates converts values to the type. + To be added. + + + To be added. + reates a new object that specifies that the class it decorates converts values to . + To be added. + + + The name of the type to which the class decorated with this attribute can convert values. + To be added. + To be added. + + + A that contains no information about the types to which the class that it decorates can convert values. + To be added. + + + To be added. + Returns true if is a and has the same value. + To be added. + To be added. + + + Returns a value that is used for efficient storage and lookup of this object. + To be added. + To be added. + + + Exception indicating that the s specified cannot be simultaneously satisfied. + To be added. + + + A description for this exception. + Creates a new object with the explanatory message. + To be added. + + + An ImageSource that loads an image from a URI, caching the result. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets a structure that indicates the length of time after which the image cache becomes invalid. + To be added. + To be added. + + + Gets or sets a Boolean value that indicates whether caching is enabled on this object. + To be added. + To be added. + + + Gets or sets the URI for the image to get. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A that converts from a string or to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A WebViewSource bound to a URL. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the URL for this object. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for ValueChanged events. Provides both old and new values. + To be added. + + + To be added. + To be added. + Creates a new event with and . + To be added. + + + Gets the new value. + To be added. + To be added. + + + Gets the old value. + To be added. + To be added. + + + Struct defining X and Y double values. + To be added. + + + To be added. + To be added. + Creates a new that is defined by and . + To be added. + + + The horizontal coordinate. + To be added. + + + The vertical coordinate. + To be added. + + + A visual element that is used to place layouts and controls on the screen. + + The class is a base class for the class, and most of the controls that application developers will use. Nearly all UI elements that an application developer will use are derived from class. Because the class ultimately inherits from class, application developers can use the Model-View-ViewModel architecture, as well as XAML, to develop portable user interfaces. The remarks in the topic provide a discussion of MVVM and bound properties. + + + + Initializes a new instance of the View class. + It is unlikely that an application developer would want to create a new View instance on their own. + + + The collection of gesture recognizers associated with this view. + A List of . + + + Adding items to this collection will associate gesture events with this element. This is not nessesary for elements which natively support input, such as a Button. + + + This example creates a tap gesture recognizer and associates it with an image. When the image is double tapped, it will become semi-transparent. + + + image.Opacity = 0.5, + NumberOfTapsRequired = 2 + }; + image.GestureRecognizers.Add (gestureRecognizer); + ]]> + + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the HorizontalOptions modifies how the element is laid out when there is excess space available along the X axis from the parent layout. Additionally it specifies if the element should consume leftover space in the X axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the HorizontalOptions bindable property. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + Overriders must call the base method. + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the VerticalOptions modifies how the element is laid out when there is excess space available along the Y axis from the parent layout. Additionally it specifies if the element should consume leftover space in the Y axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the VerticalOptions bindable property. + + + + A containing a developer-defined . + + + + Initializes a new instance of the ViewCell class. + + + + Gets or sets the View representing the content of the ViewCell. + + + + + Extension methods for s, providing animatable scaling, rotation, and layout functions. + To be added. + + + To be added. + Aborts the TranslateTo, LayoutTo, RotateTo, ScaleTo, and FadeTo animations on element. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the fade that is described by the , , and parameters. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that eases the bounds of the that is specified by the to the rectangle that is specified by the parameter. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Rotates the that is specified by from its current rotation by . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by from its current scale to . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the rotation that is described by the , , and parameters.. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the Y axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the X axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by to the absolute scale factor . + To be added. + To be added. + + + The view to tanslate. + The x component of the final translation vector. + The y component of the final translation vector. + The duration of the animation in milliseconds. + The easing of the animation. + Animates an elements TranslationX and TranslationY properties from their current values to the new values. + To be added. + Translate to is particular useful for animations because it is applied post-layout. Translation animations will not conflict with managed layouts and thus are ideal for doing slide in/out style animations. + + + Deprecated. Do not use. + To be added. + + + Deprecated. Do not use. + + + Deprecated. Do not use. + + + Deprecated. Do not use.. + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + The base class for most Xamarin.Forms on-screen elements. Provides most properties, events, and methods for presenting an item on screen. + + + + Gets or sets the X component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the X component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorX bindable property. + To be added. + + + Gets or sets the Y component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the Y component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorY bindable property. + To be added. + + + Gets or sets the color which will fill the background of a VisualElement. This is a bindable property. + The color that is used to fill the background of a VisualElement. The default is . + To be added. + + + Identifies the BackgroundColor bindable property. + To be added. + + + Signals the start of a batch of changes to the elements properties. + Application authors will not generally need to batch updates manually as the animation framework will do this for them. + + + Signals the end of a batch of commands to the element and that those commands should now be committed. + This method merely ensures that updates sent during the batch have been committed. It does not ensure that they were not committed before calling this. + + + Gets the list of Behavior associated to this element. This is a bindable propery. + + + + + Identifies the Behaviors bindable property. + + + + Gets the bounds of the element. + The bounds of an element, in device-independent units. + Bounds is assigned during the Layout cycle by a call to . + + + + + Occurs when the Children of a VisualElement have been re-ordered. + + + + Attemps to set focus to this element. + + if the keyboard focus was set to this element; if the call to this method did not force a focus change. + Element must be able to receive focus for this to work. Calling Focus on offscreen or unrealized elements has undefined behavior. + + + Occurs when the element receives focus. + Focused event is raised whenever the VisualElement receives focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + + + The available width that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the element. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of your app. Overriding GetSizeRequest should only be done if you want to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + Gets the current rendered height of this element. This is a read-only bindable property. + The renderered height of this element. + The height of an element is set during the Layout phase. + + + Identifies the Height bindable property. + + + + Gets or sets the desired height override of this element. + The height this element desires to be. + HeightRequest does not immediately change the Bounds of a VisualElement, however setting the HeightRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the HeightRequest property. + To be added. + + + Gets or sets a value indicating whether this element should be involved in the user interaction cycle. This is a bindable property. + + if the element should be able to receive input; if element should not receive input and should pass inputs to the element below. Default is true. + Setting InputTransparent is not the same as setting IsEnabled to false. Setting InputTransparent only disables inputs and instead causes them to be passed to the VisualElement below the element. Usually this is the parent of the element. + + + + Identifies the InputTransparent bindable property. + + + + Method that is called to invalidate the layout of this . Raises the event. + To be added. + + + Gets or sets a value indicating whether this element is enabled in the user interface. This is a bindable property. + + if the element is enabled; otherwise, . The default value is + + + Elements that are not enabled do not participate in hit detection, and therefore will not receive focus or emit input events. + + + The following example shows a handler on a button which will then set IsEnabled to false on another button. + + + button2.IsEnabled = false; + } + } + ]]> + + + + + Identifies the InputTransparent bindable property. + + + + Gets a value indicating whether this element is focused currently. This is a bindable property. + + if the element is focused; otherwise, . + + + Applications may have multiple focuses depending on the implementation of the underlying toolkit. Menus and modals in particular may leave multiple items with focus. + + + The following example shows conditionally setting a background color based on the focus state. + + + + + + + + Identifies the IsFocused bindable property. + + + + Gets or sets a value that determines whether this elements should be part of the visual tree or not. This is a bindable property. + + if the element should be rendered; otherwise, . Default value is . + + Setting IsVisible to false will remove the element from the visual tree. The element will no longer take up space in layouts or be eligle to receive any kind of input event. + + The following example shows a stack where the middle element is toggled when a button is activated. + + + + + + + + Identifies the IsVisible bindable property. + + + + The new bounds of the element. + Updates the bounds of the element during the layout cycle. + Calling Layout will trigger a layout cycle for the sub-tree of this element. + + + Event that is raised when the layout of a visual element is invalidated. + To be added. + + + Gets or sets a value which overrides the minimum height the element will request during layout. + The minimum height the element requires. Default value is -1. + + + MinimumHeightRequest is used to override the results of a call to by setting the minimum height property. This causes overflow handling to shrink this element to its minimum height before elements who do not have a minimum size set. + + + The following example sets the MinimumHeightRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumHeightRequest property. + To be added. + + + Gets or sets a value which overrides the minimum width the element will request during layout. + The minimum width the element requires. Default value is -1. + + + MinimumWidthRequest is used to override the results of a call to by setting the minimum width property. This causes overflow handling to shrink this element to its minimum width before elements who do not have a minimum size set. + + + The following example sets the MinimumWidthRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumWidthRequest property. + To be added. + + + Gets the context aware navigation interface for the element. + An that allows for navigation using the ancestral navigation implementor. + + + Use the Navigation property to perform navigation from any element. If the element has not yet been added to a tree which contains a navigation implementor, the actions are queued up until it is. + + + The following example navigates to a new page created in the callback of a buttons event. + + + + + + + Identifies the Navigation bindable property. + + + + Invoked whenever the event is about to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + It is required to call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. Most layouts will want to implement this method in order to layout their children during a layout cycle. + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + A which contains the desired size of the element. + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the opacity value applied to the element when it is rendered. This is a bindable property. + The opacity value. Default opacity is 1.0. Values will be clamped between 0 and 1 on set. + + + The opacity value has no effect unless IsVisible is . Opacity is inherited down the element hierarchy. If a parent has 0.5 opacity, and a child has 0.5 opacity, the child will render with an effective 0.25 opacity. Setting opacity to 0 has undefined behavior with input elements. + + + The following example sets the opacity of a layout to 0.5 and the opacity of one of its children to 0.5, making the child 25% opaque. + + + + + + + + Identifies the Opacity bindable property. + + + + Gets or sets the local resource dictionary. + The current resource dictionary, where resources are stored by key. + + In XAML, resource dictionaries are filled with key/value pairs that are specified in XML and consequently created at run time. The keys in the resource dictionary are specified with the x:Key attribute of the XML tag for the type to create. An object of that type is created, and is initialized with the property and field values that are specified either by additional attributes or by nested tags, both of which, when present are simply string representations of the property or field names. The object is then inserted into the for the enclosing type at runtime. + + For example, the XAML below, taken from the XAML for Xamarin.Forms series, creates a resource dictionary that contains object constants that can be used for any objects that are added to the surrounding : + + + + + + + +]]> + Note that the above snippet is only valid when nested within a <ContentPage>...</ContentPage> tag pair. Within that pair, the app developer can use both of the horzOptions and vertOptions keys to specify values for properties of type by using the "{...}" static resource syntax. The short example below, also taken from the XAML for Xamarin.Forms series, illustrates this syntax: + ]]> + Resource dictionaries and their associated XML provide the application developer with a convenient method to reuse code inside the XAML compile-time and run-time engines. + + + + + Gets or sets the rotation about the Z-axis (affine rotation) when the element is rendered. + The rotation about the Z-axis in degrees. + Rotation is applied relative to and . + + + Identifies the Rotation bindable property. + + + + Gets or sets the rotation about the X-axis (perspective rotation) when the element is rendered. + The rotation about the X-axis in degrees. + RotationX is applied relative to and . + + + Identifies the RotationX bindable property. + + + + Gets or sets the rotation about the Y-axis (perspective rotation) when the element is rendered. + The rotation about the Y-axis in degrees. + RotationY is applied relative to and . + + + Identifies the RotationY bindable property. + + + + Gets or sets the scale factor applied to the element. + The scale factor of the element. Default value is 1.0. + Scale is applied relative to and . + + + Identifies the Scale bindable property. + + + + The newly allocated width. + The newly allocated height. + SizeAllocated is called during a layout cycle to signal the start of a sub-tree layout. + Calling SizeAllocated will start a new layout cycle on the children of the element. Excessive calls to SizeAllocated may cause performance problems. + + + Occurs when either the Width or the Height properties change value on this element. + Classes should implement if they wish to respond to size change events directly. + + + Gets or sets the style that defines how this visual element is displayed. + To be added. + To be added. + + + Backing store for the Style property. + To be added. + + + Gets or sets the X translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationX bindable property. + + + + Gets or sets the Y translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationY bindable property. + + + + Gets the list of Trigger associated to this element. This is a bindable property. + + + + + Identifies the Triggers bindable property. + + + + Unsets focus to this element. + Element must already have focus for this to have any effect. + + + Occurs when the element loses focus. + Unfocused event is raised whenever the VisualElement loses focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + Gets the current rendered width of this element. This is a read-only bindable property. + The renderered width of this element. + The width of an element is set during the Layout phase. + + + Identifies the Width bindable property. + + + + Gets or sets the desired width override of this element. + The width this element desires to be. + WidthRequest does not immediately change the Bounds of a VisualElement, however setting the WidthRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the WidthRequest property. + To be added. + + + Gets the current X position of this element. This is a read-only bindable property. + The X position of this element relative to its parents bounds. + The x value of an element is set during the Layout phase. + + + Invalidates the measure when the native size of the element changes. + To be added. + + + Identifies the X bindable property. + + + + Gets the current Y position of this element. This is a read-only bindable property. + The Y position of this element relative to its parents bounds. + The y value of an element is set during the Layout phase. + + + Identifies the Y bindable property. + + + + Class that contains arguments for the event that is raised after web navigation completes. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets a value that describes the result of the navigation. + To be added. + To be added. + + + Class that contains arguments for the event that is raised after web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether or not to cancel the navigation. + To be added. + To be added. + + + Contains values that indicate why a navigation event was raised. + To be added. + + + Indicates that the navigation resulted from the user going back to a previous page in the navigation history. + + + Indicates that the navigation resulted from the user going forward to a later page in the navigation history. + + + Indicates that the navigation was to a preiously unvisited page, according to the navigation history. + + + Indicates that the navigation resulted from a page refresh. + + + TClass that contains arguments for the event that is when web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets the navigation event that was raised. + To be added. + To be added. + + + Gets the element that performed the navigation. + To be added. + To be added. + + + The destination of the navigation. + To be added. + To be added. + + + Enumerates values that indicate the outcome of a web navigation. + To be added. + + + The navigation was cancelled. + + + The navigation failed. + + + The navigation succeeded. + + + The navigation timed out. + + + A that presents HTML content. + + The following example shows a basic use. + + + + + + + + + + Creates a new element with default values. + To be added. + + + Gets a value that indicates whether the user can navigate to previous pages. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Gets a value that indicates whether the user can navigate forward. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A script to evaluate. + Evaluates the script that is specified by . + To be added. + + + Navigates to the previous page. + To be added. + + + Navigates to the next page in the list of visited pages. + To be added. + + + Event that is raised after navigation completes. + To be added. + + + Event that is raised when navigation starts. + To be added. + + + To be added. + Method that is called when is changed. + To be added. + + + To be added. + To be added. + Method that is called when the view source that is specified by the parameter is changed. + To be added. + + + Gets or sets the object that represents the location that this object displays. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Abstract class whose subclasses provide the data for a . + To be added. + + + Creates a new object with default values. + To be added. + + + Method that is called when the source is changed. + To be added. + + + To be added. + Casts a string that contains a URL to a instance. + To be added. + To be added. + + + To be added. + Casts a object to a instance. + To be added. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Defines the interface for Xamarin.Forms XAML markup extensions. + + + Types implementing this interface can be used as custom XAML markup extension. + + + The following example shows declaration of a custom markup extension. + + + The markup extension can be used directly in XAML + + + + + To be added. + Returns the object created from the markup extension. + The object + + + + Interface that defines a target and property to which a value is provided. + To be added. + + + Gets the target object. + To be added. + To be added. + + + Gets an object that identifies the target property. + To be added. + To be added. + + + Interface that defines the ability to return a root object, for instance, the top-level in a layout. + To be added. + + + The root object. + To be added. + To be added. + + + Interface defining the ability to resolve a qualified type name into a Type. + To be added. + + + To be added. + Returns the resolved type. + To be added. + To be added. + + + To be added. + To be added. + Tries to resolve a type name, putting the type value in , and returns a Boolean value that indicates whether the operation succeeded. + To be added. + To be added. + + + Exception that is thrown when the XAML parser encounters an error. + To be added. + + + Information about the condition that caused the exception to be thrown. + To be added. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Platform.iOS.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Platform.iOS.dll new file mode 100644 index 0000000..23e189f Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Platform.iOS.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Xaml.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Xaml.dll new file mode 100644 index 0000000..6d49db3 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Xaml.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Xaml.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Xaml.xml new file mode 100644 index 0000000..3a50b08 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/Xamarin.iOS10/Xamarin.Forms.Xaml.xml @@ -0,0 +1,137 @@ + + + Xamarin.Forms.Xaml + + + + Markup extension for parsing arrays. + To be added. + + + Creates a new with default values. + To be added. + + + Returns a list of the items in this . + To be added. + To be added. + + + To be added. + Returns an array that contains items of the type that is specified by the property. + To be added. + To be added. + + + Gets or sets the type of the items that can be stored in the array. + To be added. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + To be added. + + + To be added. + Internal. + To be added. + To be added. + + + Extension class for defining method. + To be added. + + + To be added. + To be added. + To be added. + Configures with the properties that are defined in the application manifest for . + To be added. + To be added. + + + Extension class that differentiates between null values and empty strings. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns the null object. + To be added. + To be added. + + + Markup extension for referring to other XAML-defined types. + To be added. + + + Creates a new with default values. + To be added. + + + Gets or sets the name of the entity to reference. + To be added. + To be added. + + + To be added. + Returns an object that represents the type that was referred to. + To be added. + To be added. + + + A markup extension that gets a static member value. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the member name. + To be added. + To be added. + + + To be added. + Returns the value of the member. + To be added. + To be added. + + + A markup extension for parsing type descriptors. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns an object that represents the type specified by the markup. + To be added. + To be added. + + + Gets or sets the name of the type. + To be added. + To be added. + + + Exception that is raised when the XAML parser encounters a XAML error. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Core.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Core.dll new file mode 100644 index 0000000..78dbe04 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Core.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Core.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Core.xml new file mode 100644 index 0000000..db18b55 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Core.xml @@ -0,0 +1,13626 @@ + + + Xamarin.Forms.Core + + + + Positions child elements at absolute positions. + + Application developers can control the placement of child elements by providing proportional coordinates, device coordinates, or a combination of both, depending on the values that are passed to method. When one of the proportional enumeration values is provided, the corresponding X, or Y arguments that range between 0.0 and 1.0 will always cause the child to be displayed completely on screen. That is, you do not need to subtract or add the height or width of a child in order to display it flush with the left, right, top, or bottom of the . For width, height, X, or Y values that are not specified proportionally, application developers use device-dependent units to locate and size the child element. + + The following example shows how to use an with proportional position arguments. + + The code sample below shows how to place two labels by specifying device-dependent units. + + + The following image shows the AbsoluteLayout demo from the FormsGallery sample. + + + + + + The class has the following XAML attached properties: + + + Attached Property + Value + + + AbsoluteLayout.LayoutBounds + + A comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + AbsoluteLayout.LayoutFlags + + + enumeration value names: All, None, HeightProportional, WidthProportional, SizeProportional, XProportional, YProportional, or PositionProportional. Application developers can combine any of these flags together by supplying a comma-separated list. + + + + Application developers can use XAML to lay out elements with the class. The example below places a blue inside an : + + + +]]> + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Initializes a new instance of the AbsoluteLayout class. + To be added. + + + A value that indicates that the width or height of the child should be sized to that childs native size. + + + Application developers can set the width or height of the property to on a visual element when adding to the layout to cause that element to be measured during the layout pass and sized appropriately. + + + + Gets the collection of child elements of the AbsoluteLayout. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the AbsoluteLayout class. + + + + A visual element. + Gets the layout bounds of . + The layout bounds of the object. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. + + + + A visual element. + Gets the layout flags that were specified when was added to an . + The layout flags of the object. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. + + + + Implements the attached property that represents the layout bounds of child elements. Bindable at run time with the string "LayoutBounds". See Remarks. + The interface for this property is defined by the and methods. + + + + The X coordinate of the region that contains the child elements and that is used to calulate proportional values. + The Y coordinate of the region that contains the child elements and that is used to calulate proportional values. + The width of the the region that contains the child elements and that is used to calulate proportional values. + The height of the region that contains the child elements and that is used to calulate proportional values. + Positions and sizes the children of an AbsoluteLayout. + + Application developers can override to change the default behavior of . When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + Implements the attached property that contains the values for child elements. + The interface for this property is defined by the and methods. + + + + The element that was added to the children. + Called when a child is added to the . + + Application developers can override to change the default behavior thata is triggered when a child is added. When doing so, it is recommended to call the base method and then add additional logic. + + + + The element that was removed from the children. + Called when a child is removed from the . + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then add additional logic. + + + + The available width for the AbsoluteLayout to use. + The available height for the AbsoluteLayout to use. + Called during the measure pass of a layout cycle to get the desired size of the AbsoluteLayout. + A which contains the desired size of the AbsoluteLayout. + + Application developers can override to change the default behavior thata is triggered when a child is removed. When doing so, it is recommended to call the base method and then modify the dimensions and locations of the children directly. + + + + The view to delimit by . + A rectangle that represents the desired size and shape of . + Sets the layout bounds of a view that will be used to size it when it is layed out. + + This method supports the AbsoluteLayout.LayoutBounds XAML attached property. In XAML, Application developers can specify a comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle. Application developers can call this method to update the layout of a view after it is added. + + + + The view on which to set the layout flags. + A that describes the how to interpret the layout bounds for . + Sets the layout flags of a view that will be used to interpret the layout bounds set on it when it is added to the layout. + + This method supports the AbsoluteLayout.LayoutFlags XAML attached property. In XAML, Application developers can specify the following enumeration value names for the value of this property on the children of a : + + + + All + + + + + None + + + + + HeightProportional + + + + + WidthProportional + + + + + SizeProportional + + + + + XProportional + + + + + YProportional + + + + + PositionProportional + + + + Application developers can combine any of the above values by supplying a comma-separated list. Application developers can call this method to update the layout flags of a view after it is added. + + + + The type of elements in the absolute layout. + List interface with overloads for adding elements to an absolute layout. + + + + The view to add. + The location at which to position the view. + Adds a view to the list at the specified location with automatic sizing. + + + + The view to add. + The bounds to layout the view with. + The flags to interpret bounds with. + Adds a view to the list with the specified bounds and flags. + + + + Flags used to modify how layout bounds are interpreted in an . + + The class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a structure that will define the layout bounds of a child element: + For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a value of All, the application developer would specify "0.1, 0.1, 0.5, 0.5".The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.Each part of the bounding structure is interpreted according to the value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. Rectangles that, when interpreted by using the current set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results. + + + + Interpret all dimensions proportionally. + + + Interpret height property as proportional to layout height. + + + Disable all flags. + + + Equivalent to both XProportional | YProportional. + + + Equivalent to both WidthProportional | HeightProportional. + + + Interpret width property as proportional to layout width. + + + Interpret x property as proportional to the remaining space after width is accounted for. + + + Interpret y property as proportional to the remaining space after height is accounted for. + + + A visual control used to indicate that something is ongoing. + + This control gives a visual clue to the user that something is happening, without information about its progress. + + + + The class has the following XAML properties: + + + Property + Value + + + Color + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + IsRunning + + + or , to indicate whether the animation for is displayed. + + + + + The example below creates a red activity indicator that is animated to imply that an activity is ongoing: + ]]> + + + + + Initializes a new instance of the ActivityIndicator class. + + The following example shows the initialization of a running ActivityIndicator. + + + + + + + + Gets or sets the of the ActivityIndicator. This is a bindable property. + A used to display the ActivityIndicator. Default is . + + + + Identifies the Color bindable property. + + + + Gets or sets the value indicating if the ActivityIndicator is running. This is a bindable property. + A indicating if the ActivityIndicator is running. + + + + Identifies the Color bindable property. + + + + Encapsulates an animation, a collection of functions that modify properties over a user-perceptible time period. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Runs the animation with the supplied parameters. + To be added. + + + Returns a callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + A callback that recursively runs the eased animation step on this object and those of its children that have begun and not finished. + To be added. + + + Returns an enumerator that can be used to iterate over the child objects of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds an object to this that begins at and finishes at . + To be added. + To be added. + + + To be added. + To be added. + To be added. + Adds to the children of this object and sets the start and end times of to and , respectively. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Creates a new object with the specified parameters, and adds it to the children of this object. + To be added. + To be added. + + + Extension methods for . + To be added. + + + To be added. + To be added. + Stops the animation. + To be added. + If refers to an animation that belongs to this instance, then its tweener handlers are removed, the tweener is stopped, the animation is removed from this instance, and it is marked as finished. If refers to one of the kinetics that belong to this instance, then it and its ticker are removed. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the animation. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Sets the specified parameters and starts the kinetic animation. + To be added. + + + To be added. + To be added. + Returns a Boolean value that indicates whether or not the animation that is specified by is running. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a function that performs a linear interpolation between and . + A function that performs a linear interpolation between and . Application developers can pass values between 0.0f and 1.0f to this function in order to recieve a value that is offset from or , depending on the value of , by the passed value times the distance between and . + If is , then the interpolation happens between and . + + + Class that represents a cross-platform mobile application. + To be added. + + + Initializes a new instance. + To be added. + + + Gets the current application. + To be added. + To be added. + + + Gets or sets the main page of the application. + To be added. + This property throws an exception if the application developer attempts to set it to . + + + Throws . + To be added. + + + Application developers override this method to perform actions when the application resumes from a sleeping state. + To be added. + + + Application developers override this method to perform actions when the application enters the sleeping state. + To be added. + + + Application developers override this method to perform actions when the application starts. + To be added. + + + Gets the dictionary of properties for this object. + To be added. + To be added. + + + Gets or sets the resource dictionary for this object. + To be added. + To be added. + + + Defines how an image is displayed. + + + + Scale the image to fill the view. Some parts may be clipped in order to fill the view. + + + + Scale the image to fit the view. Some parts may be left empty (letter boxing). + + + Scale the image so it exactly fill the view. Scaling may not be uniform in X and Y. + + + Contains arguments for the event that is raised when a back button is pressed. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the back button event has already been handled. + To be added. + To be added. + + + Base class for menu items. + To be added. + + + Intializes a new instance. + To be added. + + + Base class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize the generic class, instead of directly using . + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + To be added. + + + To be added. + Detaches from . Calls the method. + To be added. + + + The type of the objects with which this can be associated. + Base generic class for generalized user-defined behaviors that can respond to arbitrary conditions and events. + Application developers should specialize this generic class, instead of directly using . + + + Creates a new instance. + + + + To be added. + Application developers override this method to implement the behaviors that will be associated with . + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + To be added. + Application developers override this method to remove the behaviors from that were implemented in a previous call to the method. + To be added. + + + To be added. + Calls the method and chains the handler to the superclass. + To be added. + + + Provides a mechanism by which application developers can propagate changes that are made to data in one object to another, by enabling validation, type coercion, and an event system. . + + The class provides a data storage mechanism that enables the application developer to synchronize data between objects in response to changes, for example, between the View and View Model in the MVVM design pattern. All of the visual elements in the namespace inherit from class, so they can all be used to bind the data behind their user interface elements to View Models that are supplied by the application developer. + + To bind the data behind a property in a , typically a view, to a property in the View Model, application developers should do the following. + First, the developer creates a pair of properties on the view, one of which is a , and the other of which is a property of whatever type is required. In the code below, MockBindableObject stands in for what would typically be a user interface object in production code. Application developers should note the use of and to get and set the value on the bound property; The property of the desired type provides the interface that the target of the bound property will implement. + ( + // o => o.Foo, default (string) + // ); + + public string BoundName + { + get { return (string) GetValue (BoundNameProperty); } + set { SetValue (BoundNameProperty, value); } + } +} + ]]> + Second, the developer creates the implementation for the bound property in a class that implements the interface. In the MVVM design pattern, this is typically done by the View Model. Application developers should implement the interface on classes that they want to use as View Models. In the example below, app developers should take note of the idiomatic way that the Name property is implemented to, first, ensure that the property actually changed and return if it did not, and only then assign the value and call the method. Additionally, the Name property in the example below merely wraps the name field. In practice, the application developer may choose a different model in which to store application data. + + Third, and finally, the application developer binds an instance of a BindableObject to an instance that implements INotifyPropertyChanged. In the vocabulary of the MVVM design pattern, this is "binding an instance of the View to an instance of a View Model." Once this step is complete, changes in the data are propagated between the View and View Model in a way that is determined by the value of the enumeration, if any, that was passed during the binding step. + The code below, when included in a project that reference the classes above, creates an instance of both MockBindable and MockViewModel, performs some intitialization, sets the binding, and then demonstrates a one-way binding. The code below runs without throwing an exception. + + + + + + Initializes a new instance of the BindableObject class. + The class is abstract, and this constructor is protected. It is invoked by child constructors. + + + The object that contains the properties that will be targeted by the bound properties that belong to this . This parameter is optional. + Apply the bindings to this. + + If an object is passed for the argument, bindings are first unapplied from . This method removes any current bindings from the old context, and applies every binding to the current . Application developers could use this method to bind the UI from a new View to an existing ViewModel, while optionally removing the bindings from the old View. Application developers can omit the argument in order to leave the old bindings in place. + + + + Gets or sets object that contains the properties that will be targeted by the bound properties that belong to this . + An that contains the properties that will be targeted by the bound properties that belong to this . This is a bindable property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to apply a BindingContext and a Binding to a Label (inherits from BindableObject): + + + + + + + Raised whenever the property changes. + + + + Implements the bound property whose interface is provided by the property. + + Typically, the runtime performance is better if is set after all calls to have been made. + The following example shows how to set a binding to the BindingContext: + + + + + + + The BindableProperty to clear. + Clears any value set by for . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindablePropertyKey that identifies the to clear. + Clears any value set by for the property that is identified by . + + Calling this method on a readonly property will result in an InvalidOperationException. + + + + The BindableProperty for which to get the value. + Returns the value that is contained the BindableProperty. + The value that is contained the . + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + Override this method to execute an action when the BindingContext changes. + + + + The name of the property that changed. + Call this method from a child class to notify that a change happened on a property. + + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + + The name of the property that is changing. + Call this method from a child class to notify that a change is going to happen on a property. + A triggers this by itself. An inheritor only needs to call this for properties without as the backend store. + + + Raised when a property has changed. + + + + Raised when a property is about to change. + + + + The BindableProperty from which to remove bindings. + Removes a previously set binding. + + This method succeeds even if is not bound. + + + + The BindableProperty on which to set a binding. + The binding to set. + Assigns a binding to a property. + + The following example shows how to set a binding to a property: + + + + + + + The object on which to set the inherited binding context. + The inherited context to set. + Sets the inherited context to a nested element. + + + + The BindableProperty on which to assign a value. + The value to set. + Sets the value of the specified property. + + + and are used to access the values of properties that are implemented by a . That is, application developers typically provide an interface for a bound property by defining property whose accessor casts the result of to the appropriate type and returns it, and whose accessor uses to set the value on the correct property. Application developers should perform no other steps in the public property that defines the interface of the bound property. + + The following example shows how to create a bindable property interface for an implementation that will be provided in the target property when the binding is made at run time. + (w => w.My, default(string)); + + public string My { + get { return (string)GetValue (MyProperty); } + set { SetValue (MyProperty, value); } + } +} + ]]> + + + + + The BindablePropertyKey on which to assign a value. + The value to set. + Sets the value of the propertyKey. + + This method and are useful to implement BindableProperties with limited write access. The write access is limited to the scope of the BindablePropertyKey. + The following example shows how to declare a BindableProperty with "internal" write access. + + (w => w.My, default(string)); + public static readonly BindableProperty MyProperty = MyPropertyKey.BindableProperty; + + public string My { + get { return (string)GetValue (MyProperty); } + internal set { SetValue (MyPropertyKey, value); } + } +} + ]]> + + + + + Unapply all the bindings. + + This method removes all current bindings from the current context. + Changing a bound property requires that the binding count for a bound property must be 0. The method merely decrements the cound, and does not remove all bindings everywhere. + + + + Contains convenience extension methods for . + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The . + The BindableProperty on which to set a bindinge. + A indicating the property path to bind to. + The for the binding. This parameter is optional. Default is . + An for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding to a property. + + The following example shows how to use the extension method to set a binding. + + + + + + + The source type. + The BindableObject. + The BindableProperty to bind to + An expression used to retrieve the source path. + The BindingMode for the binding. This parameter is optional. Default is . + An IValueConverter for the binding. This parameter is optional. Default is . + A string used as stringFormat for the binding. This parameter is optional. Default is . + Creates and applies a binding from an expression. + + This extension method uses Expression instead of path to creates and sets bindings. Using Expressions is more refactoring friendly. + This following example illustrates the setting of a binding using the extension method. + + (Label.TextProperty, vm => vm.Name); +label.BindingContext = new PersonViewModel { + Name = "John Doe", + Company = "Xamarin" +}; +Debug.WriteLine (label.Text); //prints "John Doe" + ]]> + + + + + A BindableProperty is a backing store for properties allowing bindings on . + + The following example shows the creation of a BindableProperty as a backing store for a property. It shows also how to bind to that BindableProperty. + + (w => w.Foo, default(string)); + + public string Foo { + get { return (string)GetValue (FooProperty); } + set { SetValue (FooProperty, value); } + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MockBindable.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (bindable.Foo); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + To be added. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + To be added. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + Prefer this overload using an expression to the one using a property name when you can, as it makes code more resilient to refactoring. + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class for an attached property. + A newly created attached BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types.. + Creates a new instance of the BindableProperty class. + A newly created BindableProperty. + + An attached BindableProperty is a kind of BindableProperty meant to be applied to another class. + The following example shows hte declaration and usage of an attached BindableProperty: + + (bindable => GetFoo (bindable), default(string)); + + public static string GetFoo (BindableObject bindable) + { + return (string)bindable.GetValue (FooProperty); + } + + public static void SetFoo (BindableObject bindable, string value) + { + bindable.SetValue (FooProperty, value); + } +} + +public class MockViewModel +{ + public string Name {get;set;} +} + +MockViewModel model = new MockViewModel { Name = "John Doe" }; +var bindable = new MockBindable (); +bindable.SetBinding (MyClass.FooProperty, "Name"); +bindable.BindingContext = model; +Console.WriteLine (MyClass.GetFoo (bindable)); //prints "John Doe" + ]]> + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class for attached read-only properties. + A newly created attached read-only BindableProperty. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The type of the declaring object. + The type of the property. + An expression identifying a static method returning the value of the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + A newly created BindablePropertyKey. + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindablePropertyKey class. + + + + + The name of the BindableProperty. + The type of the property. + The type of the declaring object. + The default value for the property. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + To be added. + To be added. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindablePropertyKey class. + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + The type of the declaring object. + The type of the property. + An expression identifying the getter for the property using this BindableProperty as backing store. + Default value for the BindableProperty. + The BindingMode to use on SetBinding() if no BindingMode is given. This parameter is optional. Default is BindingMode.OneWay. + A delegate to be ran when a value is set. This parameter is optional. Default is null. + A delegate to be ran when the value has changed. This parameter is optional. Default is null. + A delegate to be ran when the value will change. This parameter is optional. Default is null. + A delegate used to coerce the range of a value. This parameter is optional. Default is null. + A Func used to initialize default value for reference types. + Creates a new instance of the BindableProperty class. + A newly created BindablePropertyKey. + + A BindablePropertyKey is used to restrict write access to a property, either via SetValue() or binding. A BindableProperty is usually defined too, to give broader read access + The following example shows the creation of a BindablePropertyKey. + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the type declaring the BindableProperty + + Unused + + + Gets the default BindingMode. + + + + + Gets the default value for the BindableProperty. + + + + + Gets the Func used as default value creator. + + + + + Gets a value indicating if the BindableProperty is created form a BindablePropertyKey. + + + + + Gets the property name. + + + + + Gets the type of the BindableProperty. + + + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanged. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.PropertyChanging. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.CoerceValue. + To be added. + To be added. + + + To be added. + Strongly typed delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Delegate for BindableProperty.DefaultValueCreator. + To be added. + To be added. + + + To be added. + To be added. + Delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + To be added. + To be added. + To be added. + Strongly-typed delegate for BindableProperty.ValidateValue. + To be added. + To be added. + + + The secret key to a BindableProperty, used to implement a BindableProperty with restricted write access. + + The following example shows the creation of a BindablePropertyKey. Write access is while read access is . + + (w => w.Foo, default(string)); + + public static readonly BindableProperty FooProperty = FooPropertyKey.BindableProperty; + + public string Foo { + get { return (string)GetValue (FooProperty); } + internal set { SetValue (FooPropertyKey, value); } + } +} + ]]> + + + + + Gets the BindableProperty. + A BindableProperty used for read access. + + + + A single 1:1 immutable data binding. + This class is immutable. + + + Constructs and initializes a new instance of the class. + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + The property path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + An object used as the source for this binding. This parameter is optional. Default is . + Constructs and initializes a new instance of the class. + + The following example shows how to set a binding to a property with a BindingMode and Converter: + + + + + + + Gets or sets the converter to be used for this binding ? + An IValueConverter, or . + + + + Gets or sets the parameter passed as argument to the converter. + An object, or . + + + + The type of the source of the binding. + An expression used to retrieve the binding path. + The binding mode. This property is optional. Default is . + The converter. This parameter is optional. Default is . + An user-defined parameter to pass to the converter. This parameter is optional. Default is . + A String format. This parameter is optional. Default is . + This is a convenient factory method to create a binding from an expression, instead of a property name. This api is more resilient to refactoring. + A newly created binding. + + The following example shows how to set a binding to a property : + + (vm => vm.Name)); +Debug.WriteLine (label.Text); //prints "John Doe". + ]]> + + + + + Gets or sets the path of the property + A string indicating the path to the property. + + + + Gets or sets the source of the binding. + An object used as the binding source. + If the Source is not null, the BindingContext is ignored, and the Source is used instead. This allows to set a source for a single Binding, and not for all the Bindings applied to the BindableObject. + + + An abstract class that provides a and a formatting option. + To be added. + + + To be added. + Stops synchronization on the . + To be added. + + + To be added. + To be added. + To be added. + Starts synchronization on the by using and . + To be added. + + + Gets or sets the mode for this binding. + To be added. + To be added. + + + Gets or sets the string format for this binding. + + A string specifying the format for the value of this binding. + + + + Used for providing a display format for the binding value or compositing the value with other + text. Implementors of decide how the string format is utilized, but + all support standard conventions. + + + allows for one argument for its singular value. + + + + A simple example showing compositing text and determining the display format for the value with a + + + + + + + + Throws an if the binding has been applied. + + Use this method in property setters as bindings can not be changed once applied. + + + + Class that represents a value comparison with the target of an arbitrary binding. + To be added. + + + Initializes a new instance. + To be added. + + + Gets or sets the binding against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Used by XAML infrastructure. + To be added. + To be added. + + + The direction of changes propagation for bindings. + + The following examples shows some BindingMode use cases. + + (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 (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 (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" + ]]> + + + + + When used in Bindings, indicates that the Binding should use the . When used in BindableProperty declaration, defaults to BindingMode.OneWay. + + + 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. + + + 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. + + + Indicates that the binding should propagates changes from source (usually the View Model) to target (the BindableObject) in both directions. + + + Type converter that converts from source types to + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert to . + To be added. + To be added. + + + To be added. + To be added. + Converts to by using . + To be added. + To be added. + + + A bounds layout constraint used by s. + To be added. + + + To be added. + To be added. + Returns a object that contains the compiled version of and is relative to either or the views referred to in . + To be added. + To be added. + + + A that converts strings into s for use with s. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A used to draw a solid colored rectangle. + + BoxView is a useful stand-in for images or custom elements when doing initial prototyping. BoxView has a default size request of 40x40. If you need a different size, assign the and properties. + The class has the following XAML properties: + PropertyValueColorA color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + The example below creates a red with the default width and height. + ]]> + + The following example shows a basic use: + + + + + + + + + + Initializes a new instance of the BoxView class. + + + + Gets or sets the color which will fill the rectangle. This is a bindable property. + The color that is used to fill the rectangle. The default is . + + + + Identifies the Color bindable property. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + + + A button that reacts to touch events. + + + The following example shows a basic use: + + + + + + + + + Initializes a new instance of the Button class. + + + + Gets or sets a color that describes the border stroke color of the button. This is a bindable property. + The color that is used as the border stroke color; the default is . + This property has no effect if is set to 0. On Android this property will not have an effect unless is set to a non-default color. + + + Backing store for the BorderColor bindable property. + + + + Gets or sets the corner radius of the border. This is a bindable property. + The corner radius of the button border; the default is 5. + + + + Backing store for the BorderRadius bindable property. + + + + Gets or sets the width of the border. This is a bindable property. + The width of the button border; the default is 0. + Set this value to a non-zero value in order to have a visible border. + + + Backing store for the BorderWidth bindable property. + + + + Occurs when the Button is clicked. + The user may be able to raise the clicked event using accessibility or keyboard controls when the Button has focus. + + + Gets or sets the command to invoke when the button is activated. This is a bindable property. + A command to invoke when the butto is activated. The default value is . + This property is used to associate a command with an instance of a button. This property is most often set in the MVVM pattern to bind callbacks back into the ViewModel. is controlled by the Command if set. + + + Gets or sets the parameter to pass to the Command property. This is a bindable property. + A object to pass to the command property. The default value is . + + + + Backing store for the CommandParameter bindable property. + + + + Backing store for the Command bindable property. + + + + Gets or sets the Font for the Label text. This is a bindable property. + The value for the button. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the button text is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the button text belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets or sets the size of the font of the button text. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the optional image source to display next to the text in the Button. This is a bindable property. + To be added. + To be added. + + + Backing store for the Image bindable property. + + + + Overriden + + + + The name of the changed property. + Call this method from a child class to notify that a change happened on a property. + A Button triggers this by itself. An inheritor only need to call this for properties without BindableProperty as backend store. + + + Gets or sets the Text displayed as the content of the button. This is a bindable property. + The text displayed in the button. The default value is . + Changing the Text of a button will trigger a layout cycle. + + + Gets or sets the for the text of the button. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Sends a click event. + To be added. + + + A Page that users can swipe from side to side to display pages of content, like a gallery. + + The provides a navigation experience that will feel natural and familiar to Windows Phone users. By using , application developers can provide customized navigation on a per-platform basis. For example, an application developer could use a for Android and iOS, and use a on Windows Phone. + + The following XAML example, when properly included and referenced in a Xamarin.Forms project, creates a that displays three simple elements: + + + + + + + + + + + + + + + +]]> + + + The following C# example creates a that displays three simple elements: + pages = new List (0); +Color[] colors = { Color.Red, Color.Green, Color.Blue }; +foreach (Color c in colors) { + pages.Add (new ContentPage { Content = new StackLayout { + Children = { + new Label { Text = c.ToString () }, + new BoxView { + Color = c, + VerticalOptions = LayoutOptions.FillAndExpand + } + } + } + }); +} + +MainPage = new CarouselPage { + Children = { pages [0], + pages [1], + pages [2] } +}; +]]> + + When embedding a CarouselPage into a , application developers should set to to prevent gesture conflicts between the CarouselPage and MasterDetailPage. + + + + + + + Initializes a new instance of the CarouselPage class. + + + + The object representing the model ofr the page. + Creates a default page, suitable for display in this, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Provides base class and capabilities for all Forms cells. Cells are elements meant to be added to or . + + The subtypes of are: + + + Type + Description + + + EntryCell + A with a label and a single line text entry field. + + + SwitchCell + A with a label and an on/off switch. + + + TextCell + A with primary and secondary text. + + + ImageCell + A that also includes an image. + + + ViewCell + A containing a developer-defined . + + + The various subclasses are shown in the following image: + + + + + + + The class has the following XAML properties: + + + Property + Value + + + ContextActions + + A list of objects to display when the user performs the context action. + + + + IsEnabled + + + or , indicating whether the animation for is displayed. + + + + + + + Initializes a new instance of the Cell class. + Cell class is abstract, this constructor is never invoked directly. + + + Occurs when the visual representation of the Cell is being added to the visual layout. + This method is raised before the cell is on screen. + + + Gets a list of menu items to display when the user performs the device-specific context gesture on the Cell. + The list of menu items that will be displayed when the user performs the device-specific context gesture on the Cell. + The context gesture on the iOS platform is a left swipe. For Android and Windows Phone operating systems, the context gesture is a press and hold. + + + Occurs when the visual representation of the Cell is being removed from the visual layout. + This method is for virtualization usage only. It is not gauranteed to fire for all visible Cells when the ListView or TableView is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Gets a value that indicates whether the cell has at least one menu item in its list property. + To be added. + To be added. + + + Gets or sets the height of the Cell. + A double that represents the height of the cell. + The property is ignored if the app developer sets the or property on the surrounding to . In that case, the or property is used instead. + + + Gets or sets the IsEnabled state of the Cell. This is a bindable property. + A bool. Default is . + + + + Identifies the IsEnabled bindable property. + + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Event that is raised when the binding context is changed. + To be added. + + + Invoked whenever an event occurs. Implement this method to add class handling for this event. + + + + Invoked whenever a long press is applied to the Cell. + + + + Invoked whenever the Cell is Tapped. + + + + Gets the height of the rendered cell on the device. + + + + + Occurs when the Cell is Tapped. + + + + To be added. + To be added. + To be added. + To be added. + Delegate for callback in . + To be added. + + + Class that represents a color and exposes it as RGBA and HSL values. + + This type is immutable. Colors can be expressed in the RGB or HSL modes. While the constructor takes R, G, B, and A values, the class also calculates and makes available HSL data for the color. + + In XAML, application developers can specify any property that is of type , for example, either as a XAML attribute or as a nested tag. The following code example shows how to specify the text color for a label by using an attribute: + + Hello, World! +]]> + The example below shows how to specify the text color for a label by using a nested tag: + + Hello, World! + Color.Blue +]]> + + Application developers can specify colors in XAML either as a hexadecimal number or as a valid color name. + When specifying a color with a hexadecimal number, app developers can use 3, 4, or 6 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". Finally, if the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". + When specifying a color with a string, app developers can use color name in isolation, or prefix it with "Color.". For example, both Purple and Color.Purple are valid ways to specify the color purple. The following table describes the valid color names that can be used to specify colors in XAML. +ColorShort NameRGB ValueColor.TransparentTransparent0, 0, 0 (With the alpha channel set to 0.)Color.AquaAqua0, 255, 255Color.BlackBlack0, 0, 0Color.BlueBlue0, 0, 255Color.FuchsiaFuchsia255, 0, 255Color.GrayGray128, 128, 128Color.GreenGreen0, 128, 0Color.LimeLime0, 255, 0Color.MaroonMaroon128, 0, 0Color.NavyNavy0, 0, 128Color.OliveOlive128, 128, 0Color.PurplePurple128, 0, 128Color.PinkPink255, 102, 255Color.RedRed255, 0, 0Color.SilverSilver192, 192, 192Color.TealTeal0, 128, 128Color.WhiteWhite255, 255, 255Color.YellowYellow255, 255, 0 + + + + The luminosity of the gray-scale color. + Initialize a new gray color. + This is equivalent to new Color (value, value, value). The value is clamped to [0-1]. App developers should use the equivalent methods, instead. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Initializes a new RGB color. + This is equivalent to new Color (r, g, b, 1). Values are clamped to [0-1]. Prefer the equivalent methods. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Initializes a new RGB color with an alpha channel. + Values are clamped to [0-1]. + + + Gets the alpha component of the color. + The Alpha component of the color as a double that is in the inclusive range [0-1]. + + + + Gets the accent or tint color from the application. + A Color. + The accent color is platform and device dependent. + + + The delta (positive or negative) to add to the luminosity channel. + Returns a new Color with a modified luminosity channel. + A new color with a possibly modified luminosity channel. + The parameter is added to the current luminosity, and the resulting luminosity is then clamped to the inclusive range [0,1]. + + + Aqua, the color that is represented by the RGB value #00ffff. + + + + Gets the blue component of the color. + The Blue component of the color as a double that is in the inclusive range [0-1]. + + + + Black, the color that is represented by the RGB value #000000. + + + + Blue, the color that is represented by the RGB value #0000ff. + + + + Returns the default color. + The default color. + The Default color is used to unset any Color, and revert to the default one. + + + The value to compare to this structure. + Determine if the provided is equivalent to the current Color. + + if the provided object is an equivalent Color. Otherwies, . + Overriden. + + + A string that contains the hexadecimal (A)RGB color representation. + Returns a new RGB Color instance with the requested Red, Green, and Blue channels. The Alpha channel is set if contains one. + A color. + + When specifying a color with a hexadecimal number, app developers can use 3, 4, 6, or 8 digits. If the developer specifies 3 digits, they are interpreted as RGB doublet data for a fully opaque color. For example, "#123" specifies the color that is represented by "#FF112233". If the developer provides a 4-digit hexadecimal number, then the data are interpreted as above, except that the first digit specifies the alpha channel. For example, "#1234" specifies the color that is represented by "#11223344". If the developer provides a 6 digit hexadecimal number, the data are interpreted as a fully opaque color with those RGB values. For example, "#112233" specifies the color that is represented by "#FF112233". Finally, the developer can explicitly provide an 8-digit number that completely specifies the Alpha, Red, Green, and Blue channels, in that order. + Note that, in the paragraph above, the fully expanded color description is of the format, AARRGGBB. That is: the first pair of hexadecimal digits specifies the Alpha channel; the second pair specifies the Red channel; the third pair specifies the Green channel; and the final pair specifies the Blue channel. + + + + The Hue component of the color. + The Saturation component of the color. + The Luminosity component of the color. + The alpha value of the color. + Returns a new HSL Color with an alpha channel + An HSL color + + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + An RGB color + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + Returns a new rgb color instance. + A new RGB color. + Component values are clamped to [0,255]. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,1]. The method is striclty equivalent to new Color (r, g, b, a), and is present for API consistency. + + + The red component of the color. + The green component of the color. + The blue component of the color. + The alpha component of the color. + Returns a new RGBA color instance. + A new RGBA color. + Component values are clamped to [0,255]. + + + A uint that represents the ARGB value of the color. + Returns a new Color with the requested RGBA value. + An RGBA color. + + The parameter must represent an unsigned integer that can be represented by hexadecimal string that matches the format "AARRGGBB". + + + + Fucshia, the color that is represented by the RGB value #ff00ff. + + + + Fucshia, the color that is represented by the RGB value #ff00ff. Deprecated. See Remarks. + Use the color, instead. + + + Gets the Green component of the color. + The Green component of the color as a double that is in the inclusive range [0-1]. + + + + Returns the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gray, the color that is represented by the RGB value #808080. + + + + Green, the color that is represented by the RGB value #008000. + + + + Gets the Hue of the color. + The Hue component of the color as a double that is in the inclusive range [0-1]. + + + + Lime, the color that is represented by the RGB value #00ff00. + + + + Gets the Luminosity fo the color. + The Luminosity component of the color as a double that is in the inclusive range [0-1]. + + + + Maroon, the color that is represented by the RGB value #800000. + + + + The alpha multiplicator. + Returns a new color with the alpha channel multiplied by alpha, clamped to the inclusive range [0-1]. + A new RGBA color with a possibly new value for its alpha channel. See Remarks. + The resulting color has its alpha channel clamped toto the inclusive range [0-1], preventing invalid colors. + + + Navy, the color that is represented by the RGB value #000080. + + + + Olive, the color that is represented by the RGB value #808000. + + + + To be added. + To be added. + Returns if represents the same color as . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same color as . + To be added. + To be added. + + + Pink, the color that is represented by the RGB value #ff66ff. + + + + Purple, the color that is represented by the RGB value #800080. + + + + Gets the Red component of the color. + The Red component of the color as a double that is in the inclusive range [0-1]. + + + + Red, the color that is represented by the RGB value #ff0000. + + + + Gets the Saturation of the color + The Saturation component of the color as a double that is in the inclusive range [0-1]. + + + + Silver, the color that is represented by the RGB value #c0c0c0. + + + + Teal, the color that is represented by the RGB value #008080. + + + + Returns a string representation of the Color. + A string. + Overriden. + + + The transparent color, represented by the RGB value #00000000. + The Alpha channel of the color is set to 0. + + + White, the color that is represented by the RGB value #ffffff. + + + + The modified Hue. + Returns a color with modified Hue, but keeping the same Saturation and Luminosity. + A color. + The Hue is clamped to the inclusive range [0,1]. This method is useful for creating color palettes. + + + The modified luminosity. + Returns a color with modified Luminosity. + A new HSL color. + The new Luminosity is clamped to [0,1]. This method is useful for creating color palettes. + + + The modified Saturation. + Returns a new color with modified Saturation. + A new HSLcolor. + The Saturation is clamped to [0,1]. This method is useful for creating color palettes. + + + Yellow, the color that is represented by the RGB value #ffff00.. + + + + A that converts from strings to a . + + The following example shows some variations of : + + + + + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + An that defines properties for a column in a . + + The class has the following XAML property: + + + Property + Value + + + Width + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute width. + + + + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Event that is raised when the size of the column is changed. + To be added. + + + Gets or sets the width of the column. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A for s. + + App developers can specify values for the property in XAML by nesting ColumnDefinition tags inside tags for the collection property. The following example demonstrates setting three column widths to each of the three valid values: + + + + + + +]]> + + + + + Creates a new empty collection. + To be added. + + + Defines an implementation wrapping an . + + + The following example creates a new Command and set it to a button. + + + Debug.WriteLine ("Command executed")); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, +}; +]]> + + + More useful scenarios takes a parameter + + + Debug.WriteLine ("Command executed: {0}", o)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action<object> to execute when the Command is executed. + Initializes a new instance of the Command class. + The Action will be executed with a parameter. + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An Action<object> to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + Wehenever the value returned by canExecute has changed, a call to is required to trigger . + + + An used as parameter to determine if the Command can be executed. + Returns a indicating if the Command can be exectued with the given parameter. + + if the Command can be executed, otherwise. + + If no canExecute parameter was passed to the Command constructor, this method always returns . + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + Occurs when the target of the Command should reevaluate whether or not the Command can be executed. + + + + Send a + + + + An used as parameter for the execute Action. + Invokes the execute Action + + If the Command was created with non-generic execute parameter, the parameter of this method is ignored. + + + + The Type of the parameter, + Defines an implementation wrapping a generic Action<T>. + + + The following example creates a new Command and set it to a button. + + + (s => Debug.WriteLine ("Command executed: {0}", s)); +var button = new Button { + Text = "Hit me to execute the command", + Command = command, + CommandParameter = "button0", +}; +]]> + + + + + An Action to execute when the Command is executed. + Initializes a new instance of the Command class. + + + + An Action to execute when the Command is executed. + A indicating if the Command can be executed. + Initializes a new instance of the Command class. + + + + Base class for conditions. + To be added. + + + A layout constraint used by s. + To be added. + + + To be added. + Returns a object that constrains an element to . + To be added. + To be added. + + + To be added. + Returns a that is calculated from . + To be added. + To be added. + + + To be added. + Returns a object that constrains an element relative to its parent's size. + To be added. + To be added. + + + To be added. + To be added. + Returns a object that constrains an element relative to the parameter. + To be added. + To be added. + + + Defines a constraint relationship. + + The class has the following XAML properties: + + + Property + Value + + + Constant + + An optionally signed integer literal. + + + + ElementName + + The name of a source element against which to calculate the constraint. + + + + Factor + + A decimal literal in the range (0,1]. + + + + Property + + The name of the property on the source element to use in the constraint calculation. + + + + Type + + + Constant, RelativeToParent, or RelativeToView. + + + + + + + Creates a new with default values. + To be added. + + + Gets or sets the constant constraint value.. + To be added. + To be added. + + + Gets or sets the name of a source element against which to calculate the constraint. + To be added. + To be added. + + + Gets or sets the factor by which to scale a constrained dimension, relative to the source element. + To be added. + To be added. + + + Gets or sets name of the property on the source element to use in the constraint calculation. + To be added. + To be added. + + + To be added. + Returns a for this . + To be added. + To be added. + + + Gets or sets the constraint type. + To be added. + To be added. + + + Enumeration specifying whether a constraint is constant, relative to a view, or relative to its parent. + To be added. + + + A constant constraint. + + + A constraint that is relative to a parent element. + + + A constraint that is relative to a view. + + + A that converts from strings to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that displays a single view. + + This is a Page displaying a single View, often a container like a or . + + The example below is taken from he App.cs file that is contained in the default "Hello, Forms!" app. It uses a to display a label, which is a typical, though basic, use of the class. + + The FormsGallery sample, which can be found on the Sample Applications page, has a ContentPageDemoPage.cs file. This file contains a longer and more complicated example. + The class has the following XAML property: + + + + Property + Value + + + Content + + A list of objects that represent the visual content of the . This tag can be omitted, and the contents listed directly. + + + A ContentPage tag can be the root element of a XAML document. + + + + + + Initializes a new ContentPage instance. + + + + Gets or Sets the View element representing the content of the Page. + A subclass, or . + + + + Indicates the property of the type that is the (default) content property. + + XAML processor uses to determine the content property. + +Decorating types with ContentPropertyAttribute allows shorter XAML syntax. As + + has a ContentProperty attribute applied, this XAML is valid: + + +This is equivalent to the following, more explicit XAML + + + + + ]]> + + + + The name of the property. + Initializes a new instance of the ContentPropertyAttribute class. + + + + Gets the name of the content property + A string representing the name of the content property. + + + + An element that contains a single child element. + + The class has the following XAML property: + + + Property + Value + + + Content + + The object that represents the visual content of the . + + + + + The following example shows how to construct a new ContentView with a Label inside. + + + + + + + + + + + Initializes a new instance fo the ContentView class. + + + + Gets or sets the content of the ContentView. + A used as content. + + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + Positions and sizes the content of a ContentView. + + + + The available width for the ContentView to use + The available height for the ContentView to use. + This method is called during the measure pass of a layout cycle to get the desired size of the ContentView. + A which contains the desired size of the StackLayout. + The results of this method will be the desired size of its content. + + + A template for multiple bindings, commonly used by s, s, and s. + In XAML, application developers can nest markup inside a DataTemplate tag to create a whose members are bound to the properties of data objects that are contained in a list. + + + A custom content generator to be called + Creates and initializes a new instance of the class. + To be added. + + + To be added. + Creates a new for type . + To be added. + + + Gets a dictionary of bindings, indexed by the bound properties. + To be added. + To be added. + + + Loads the template for the type that is represented by this and sets all of the bindings and values. + To be added. + To be added. + + + To be added. + To be added. + Sets the binding for . + To be added. + + + To be added. + To be added. + Sets the value of . + To be added. + + + Returns a dictionary of property values for this , indexed by property. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + Gets or sets the parent element of this object. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + + + + + + + + + Class that represents a binding condition and a list of objects that will be applied when the condition is met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Value + + The value of the property that will trigger the setters in Setters. + + + + Setters + + A list of setters that are called when the property condition is met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the binding whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the binding that is named by the property becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the binding, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + XAML infrastructure. + To be added. + To be added. + + + Event arguments for event. + To be added. + + + To be added. + To be added. + Creates a new object that represents a change from to . + To be added. + + + The date that the user entered. + To be added. + To be added. + + + The date that was on the element at the time that the user selected it. + To be added. + To be added. + + + A that allows date picking. + + The visual representation of a DatePicker is very similar to the one of , except that a special control for picking a date appears in place of a keyboard. + + + + The following example shows a basic use: + + + + The class has the following XAML properties: + + + Property + Value + + + Format + + A string that specifies the display format in the control of the chosen date. + + + + Date + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MinimumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + MaximumDate + + An x:FactoryMethod call to the method, or a markup extension call to a method that produces a object. See below. + + + + + The example below creates a working that displays the current date and allows the user to select a date between the specified ranges. The value for the property is specified with the x:Static markup extension, and the and properties are specified by calling the method with the x:FactoryMethod and x:Arguments tags. The example below requires a namespace declaration in the root ContentPage or ContentView tags. In particular, xmlns:sys="clr-namespace:System;assembly=mscorlib" must appear in the attribute list for the root element, so that the XAML parser can resolve the name, sys:DateTime. + + + yyyy-MM-dd + + + + Jan 1 2000 + + + + + + + Dec 31 2050 + + + + + ]]> + + + + + Initializes a new instance of the DatePicker class. + + + + Gets or sets the displayed date. This is a bindable property. + The displayed in the DatePicker. + + + + Identifies the Date bindable property. + + + + An event fired when the Date property changes. + + + + The format of the date to display to the user. This is a dependency property. + A valid date format. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format dependency property. + + + + The highest date selectable for this DatePicker. This is a bindable property. + The maximum selectable for the DateEntry. Default December 31, 2100. + + + + Identifies the MaximumDate bindable property. + + + + The lowest date selectable for this DatePicker. This is a bindable property. + The minimum selectable for the DateEntry. Default January 1, 1900. + + + + Identifies the MinimumDate bindable property. + + + + To be added. + A collection parameterized by an . Base class for and . + + Objects of type are parameterized with a type of . + + + + + + + The to add. + Adds a to the collection. + To be added. + + + Removes all values from this . + To be added. + + + The to check for in this . + Returns a Boolean value that indicates whether or not this contains the specified . + To be added. + To be added. + + + To be added. + To be added. + Copies instances from this to an array, starting at the specified index. + To be added. + + + Gets the number of instances contained in this . + To be added. + To be added. + + + Returns an enumerator that iterates through the instances in this . + To be added. + To be added. + + + The instance to find. + Returns the index of the first occurrence of in this . + To be added. + To be added. + + + The position at which to insert . + The to insert. + Inserts a into this at the location that is specified by . + To be added. + + + + . instances can have items added to them and removed from them. + + + + To be added. + + + The location of the item to get or set. + Gets or sets the value indexed by . + To be added. + To be added. + + + Event that is raised when the display size of item in the collection changes. + To be added. + + + The to remove from this . + Removes a from this and returns if the item was removed. + + if was in this and was therefore removed. if was not in this . + To be added. + + + The location in this from which to remove an instance. + Removes an item from this . + To be added. + + + Gets an enumerator that can be used to iterate over the instances in this . + To be added. + To be added. + + + An attribute that indicates that the specified type provides a concrete implementation of a needed interface. + To be added. + + + To be added. + Creates a new with default values. + To be added. + + + Enumeration specifying whether should return a reference to a global or new instance. + + The following example shows how can be used to specify a new instance: + + (DependencyFetchTarget.NewInstance); + ]]> + + + + + Return a global instance. + + + Return a new instance. + + + Static class that provides the factory method for retrieving platform-specific implementations of the specified type T. + To be added. + + + To be added. + To be added. + Returns the platform-specific implementation of type T. + To be added. + To be added. + + + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + To be added. + To be added. + Registers the platform-specific implementation of type T. + To be added. + + + An utility class to interract with the current Device/Platform. + + + + The Action to invoke + Invokes an Action on the device main (UI) thread. + + This example show how to set the Text of Label on the main thread, e.g. in response to an async event. + + + { + label.Text = "Async operation completed"; +}); + ]]> + + + + + To be added. + To be added. + Returns a double that represents the named size for the font that is used on the element on the native platform. + To be added. + To be added. + + + To be added. + To be added. + Returns a double that represents a font size that corresponds to on . + To be added. + To be added. + + + Gets the kind of device Forms is currently working on. + A representing the device type. + + + + (optional) The Action to execute on iOS. + (optional) The Action to execute on Android. + (optional) The Action to execute on WinPhone. + (optional) The Action to execute if no Action was provided for the current OS. + Executes different Actions depending on the Forms is working on. + + This example show how to change the font of a Label on a single OS. + + + label.Font = Font.OfSize ("HelveticaNeue-UltraLight", NamedSize.Large)); + ]]> + + + + + The type of the value to be returned. + The value for iOS. + The value for Android. + The value for WinPhone. + Returns different values depending on the Forms is working on. + The value for the current OS. + + This example show how to use different heights for a Button on different OS. + + + + + + + + The to open. + Request the device to open the Uri. + This often navigates out of the application. + + + Gets the indicating the OS Forms is working on. + A indicating the current OS. + + + + The interval between invocations of the callback. + The action to run when the timer elapses. + Starts a recurring timer using the device clock capabilities. + While the callback returns the timer will keep recurring. + + + Class that exposes device-specific styles as static fields. + To be added. + + + The device-specific body style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific caption style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for detail text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific style for text in list items. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific subtitle style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + The device-specific title style. + To be added. + + + The key that identifies the device-specific in the base resource. + To be added. + + + Functions that modify values non-linearly, generally used for animations. + + Easing functions are applied to input values in the range [0,1]. The cubic easing functions are often considered to look most natural. + If developers wish to use their own easing functions, they should return a value of 0 for an input of 0 and a value of 1 for an input of 1 or the animation will have a jump. + The predefined functions have the following forms: + + + Member + Graph + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To be added. + Creates a new object with the function. + To be added. + + + Jumps towards, and then bounces as it settles at the final value. (Note: Known bug in 1.0.0 release) + + NOTE: The 1.0.0. release of has a known bug and runs backwards. The following graph shows the desired behavior, shortly to be released: + + + + + + + Leaps to final values, bounces 3 times, and settles. + + + + + + + + Starts slowly and accelerates. + + + + + + + + Accelerates and decelerates. Often a natural-looking choice. + + + + + + + + Starts quickly and the decelerates. + + + + + + + + A value in the range [0,1] to which the easing function should be applied. + Applies the easing function to the specified value . + The value of the easing function when applied to the value . + To be added. + + + Linear transformation. + + + + + + + + An easing function. + Converts a function into an . + An for the . + + An easing function should return a value of (or near) 0 at 0 and 1 (or near) for 1. + + + + Smoothly accelerates. + + + + + + + + Accelerates in and out. + + + + . + + + Smoothly decelerates. + + + + + + + + Moves away and then leaps toward the final value. + + + + + + + + Overshoots and then returns. + + + + + + + + A control that can edit multiple lines of text. + + For single line entries, see . + + + + + + + Initializes a new instance of the Editor class. + + + The following example creates a Editor with a Chat keyboard that fills the available space. + + + + + The class has the following XAML propertY: + + + Property + Value + + + Text + + The initial text that will appear in the editor. + + + + + + + Event that is fired when editing has completed. + iOS (Unfocusing the editor or pressing "Done" triggers the event). Android / Windows Phone (Unfocusing the Editor triggers the event) + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is null. + Setting this property will cause the event to be emitted. + + + Occurs when the text of the Editor changes. + + + + Identifies the Test bindable property. + + + + Provides the base class for all Forms hierarchal elements. This class contains all the methods and properties required to represent an element in the Forms hierarchy. + + The following diagram shows the classes derived from . + + + + The diagram shows some important categories: + + + Class + Description + + + + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + + + + + Cells are elements meant to be added to or . + + + + + + A that occupies most or all of the screen and contains a single child. + + + + + + + have a single child of type , while subclasses of have a collection of multiple children views, including other layouts. + + + + Controls and specialized s + + The lower part of the diagram shows the Xamarin.Forms classes for universally-available controls, such as s and s. + + + + + + Protected constructor used to initialize a the element. + To be added. + + + Occurs whenever a child element is added to the element. + To be added. + + + Occurs whenever a child element is removed from the element. + To be added. + + + Gets or sets a value used to identify a collection of semantically similar elements. + A string that represents the collection the element belongs to. + Use the class id property to collect together elements into semantically similar groups for identification in ui testing and in theme engines. + + + Identifies the ClassId bindable property. + To be added. + + + Occurs whenever a child element is added to the elements subtree. + To be added. + + + Occurs whenever a child element is removed from the elements subtree. + To be added. + + + Gets a value that can be used to uniquely identify an element through the run of an application. + A Guid uniquely identifying the element. + This value is generated at runtime and is not stable across runs of your app. + + + Invoked whenever the binding context of the element changes. Implement this method to add class handling for this event. + Implementors must call the base method. + + + The element that was added. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + The element that was removed. + Invoked whenever the event needs to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + Implementors must call the base method. + + + Gets or sets the parent element of the element. + The element which should be the parent of this element. + Most application authors will not need to set the parent element by hand. + + + Gets the element which is the closest ancestor of this element that is a . + The closest ansestor which is a . + Convenient way of accessing the nearest ancestor of an element which is actually represented on screen visually. If this element is a visual element, its bounds are relative to its ParentView. + + + The BindableProperty from which to remove the DynamicResource. + Removes a previously set dynamic resource + + + + The BindableProperty. + The key of the DynamicResource + Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key. + + + + Gets or sets a user defined value to uniquely identify the element. + A string uniquely identifying the element. + Use the StyleId property to identify individual elements in your application for identification in ui testing and in theme engines. + + + To be added. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + + + + + + + + + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + To be added. + To be added. + Sets a value from a renderer without breaking the binding on a bound property. + To be added. + + + The identifier of the being sought. + Finds an object previously registered with . + The Object previously associated with by a call to . Raises a if this is not in an . + To be added. + + + To be added. + To be added. + Internal use only. + To be added. + + + Identifier to be used with the . + Object to be associated with the . + Within an , creates an association between and . + To be added. + + + The identifier to be removed. + Removes from an . + To be added. + + + Provides data for events pertaining to a single . + + + + + + + + The element relevant to the event. + Constructs and initializes a new instance of the class. + + + + Gets the element relevant to the event. + The element relevant to the event. + + + + A control that can edit a single line of text. + + Entry is a single line text entry. It is best used for collecting small discrete pieces of information, like usernames and passwords. + + + The following example creates a new username and password set of entries. + + + The FormsGallery sample, which can be found on the Sample Applications page, has an EntryDemoPage.cs file. This file contains a longer and more complicated example. + + The class has the following XAML properties: + + + Property + Value + + + IsPassword + + true to indicate that the is a password field. Otherwise, false. + + + Placeholder + The default text that will appear in the control. + + + Text + + The initial text that will appear in the entry. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + + + + Initializes a new instance of the Entry class. + + + + Occurs when the user finalizes the text in an entry with the return key. + This finilaization will usually but not always be accompanied by IsFocused being set to false. + + + Gets or sets a value that indicates if the entry should visually obscure typed text. This is a bindable property. + + if the element is a password box; otherwise, . Default value is . + Toggling this value does not reset the contents of the entry, therefore it is advisable to be careful about setting IsPassword to false, as it may contain sensitive information. + + + Identifies the IsPassword bindable property. + + + + Gets or sets the placeholder text shown when the entry is null or empty. This is a bindable property. + The placeholder text shown when is null or empty. The default value is . + + + + Identifies the Placeholder bindable property. + + + + Gets or sets the text of the entry. This is a bindable property. + A string containing the text of the entry. The default value is . + Setting this property will cause the event to be emitted. + + + Event that is raised when the text in this element is changed. + To be added. + + + Gets or sets the for the text of the Entry. This is a bindable property. + The of the text. + + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + A with a label and a single line text entry field. + + The following example shows a basic use. + + + + The class has the following XAML properties: + + + Property + Value + + + Keyboard + A property name that indicates which keyboard to present to the user when editing text. + + + Label + + The text that is presented next to the entry area in the . + + + + LabelColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + The default text that will appear in the control when it is empty. + + + Text + + The initial text that will appear in the editor. + + + + XAlign + + + Center, End, or Start, to indicate the placement of the text that is entered by the user. + + + + + + + + + + Initializes a new instance of the EntryCell class. + + + + Event fired when the user presses 'Done' on the EntryCell's keyboard + + + + Gets or sets the Keyboard to display while editing the EntryCell. This is a bindable property. + A representing the keyboard kind. Default is . + + + + Identifies the Keyboard bindable property. + + + + Gets or sets the fixed text presented next to the Entry in the EntryCell. This is a bindable property. + A . + + + + Gets or sets the Color used for rendering the Label property. This is a bindable property. + Default is Color.Default. + + + + Identifies the LabelColor bindable property. + + + + Identifies the Label bindable property. + + + + Gets or sets the placeholder text displayed in the Entry when the Text is null or empty. This is a bindable property. + + + + + Identifies the Placeholder bindable property, + + + + Gets or sets the content of the Entry of the EntryCell. This is a bindable property. + + + + + Identifies the Text bindable property. + + + + Gets or sets the horizontal alignement of the Text property. This is a bindable property. + Default is . + + + + Identifies the XAlign bindable property. + + + + Class that represents a triggering event and a list of objects that will be invoked when the event is raised. + + The class has the following XAML property: + + + Property + Value + + + Event + + The name of the event to which to respond. + + + + Object name + + The qualified name of a implementation that has been defined by the application developer. This object is instantiated and its method is called when the triggering event is raised. Attributes on this tag set corresponding proptery values on the implementation before the method is called. + + + + + + Creates a new instance. + + + + Gets the list of objects that will be invoked when the event that is identified by the property is raised. + + + + + Gets or sets the name of the event that will cause the actions that are contained in the to be invoked. + + + + + Internal. + + + + Internal. + + + + An that reads an image from a file. + To be added. + + + Creates a new object with default values. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. + Overriden for FileImageSource. FileImageSource are not cancellable, so this will always returns a completed Task with as Result. + + + Gets or sets the file from which this will load an image. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed. + To be added. + + + To be added. + Allows implicit casting from a string. + To be added. + To be added. + + + To be added. + Allows implicit casting to a string. + To be added. + To be added. + + + Event args for 's and events. + + + + The who's focused was changed. + Whether or not the was focused. + Constructs and initializes a new instance of the class. + + + + Gets whether or not the was focused. + + if the view was focused, otherwise. + + + + Gets the who's focused was changed. + The who's focused was changed. + + + + The font used to display text. + The available fonts, and the matching between and real displayed fonts is device-dependent. + + + The desired font size. + Returns a font instance that represents the default bold font, in the requested size, for the device. + The requested bold . + + + + The desired font . + Returns an usable font instance representing the default bold font, in the requested NamedSize, for the device. + The requested bold . + + + + Gets the default font for the device. + The default font for the device. + To be added. + + + The value to compare this font to. + Determine if the provided is equivalent to the current Font. + + if the provided object is an equivalent font. otherwise. + Overriden. + + + Gets a value that indicates whether the font is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which this font belongs. + The font family to which this structure belongs. + To be added. + + + Gets the size of the font. + A that indicates the size of the font. + To be added. + + + Get the Hashcode for this . + A signed 32-bit hash code. + Overriden. + + + Gets the named font size, such as "Large" or "Small". + To be added. + To be added. + + + The name of the targeted system font. + The desired font size. + Returns a structure with the requested font and size. + A instance. + Font availability is platform- and device-dependent. + + + The name of the targeted system font. + The desired font . + Returns an usable , with the requested font and NamedSize. + A Font instance. + Font availability is platform and device dependent. + + + To be added. + To be added. + Returns if represents the same font that represents. Otherwise, . + To be added. + To be added. + + + To be added. + To be added. + Returns if does not represent the same font that represents. Otherwise, . + To be added. + To be added. + + + The desired font size. + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested . + + + + The desired font . + Returns an usable font instance representing the default font, in the requested size, for the device and platform. + The requested bold . + + + + The requested font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + The requested named font size. + Whether the font is bold, italic, or neither. + Returns a font structure with the specified size and attributes. + A structure with the specified and . + To be added. + + + Returns a string representation of this font structure. + A string representation of this structure. + The method returns a string that contains a labeled, comma-separated list of the , , , and properties. + + + Gets a value that indicates whether the target operating system should use size that is specified by the property. + To be added. + To be added. + + + Whether the font is italic, bold, or neither. + Returns a new font structure with the specified attributes. + A new structure with the attributes that were specified with . + To be added. + + + The requested font size. + Returns a new font structure with the size that was specified with . + To be added. + To be added. + + + The requested named font size. + A new structure with the size that was specified with . + To be added. + To be added. + + + Enumerates values that describe font styles. + To be added. + + + The font is bold. + + + The font is italic. + + + The font is unmodified. + + + Converts a string into a font size. + To be added. + + + Initializes a new object. + To be added. + + + To be added. + Returns a value that indicates if the source type can be converted to a font size. + To be added. + To be added. + + + To be added. + To be added. + Converts an object into a font size. + To be added. + To be added. + + + A that converts from strings to . + String should be formatted as "[name],[attributes],[size]" there may be multiple attributes, e.g. "Georgia, Bold, Italic, 42" + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Represents a text with attributes applied to some parts. + + + + Initializes a new instance of the FormattedString class. + To be added. + + + To be added. + Cast the FormattedString to a string, stripping all the attributes. + To be added. + To be added. + + + To be added. + Cast a string to a FromattedString that contains a single span with no attribute set. + To be added. + To be added. + + + Event that is raised when a bound property is changed. + To be added. + + + Gets the collection of spans. + To be added. + To be added. + + + Returns the text of the formatted string as an unformatted string. + To be added. + To be added. + + + An element containing a single child, with some framing options. + + Frame have a default of 20. + + The following example shows how to construct a new Frame with an Outline color. + + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasShadow + + + true or false, to indicate whether to show a shadow effect where the platform supports it. + + + + OutlineColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + + + + Initializes a new instance of the Frame class. + A Frame has a default of 20. + + + Gets or sets a flag indicating if the Frame has a shadow displayed. This is a bindable property. + A indicating whether or not the Frame has a shadow. Default is . + + + + Identifies the HasShadow bindable property. + + + + Gets or sets the color of the border of the Frame. This is a bindable property. + A representing the border Color. Default is . + + + + Identifies the OutlineColor bindable property. + + + + The base class for all gesture recognizers. + + + + The parent element of the gesture recognizer. + An element from which the binding context will be inherited. + + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying the various states of a gesture. + To be added. + + + The gesture has begun and has not ended, failed, or been cancelled. + + + The gesture was cancelled. + + + The gesture has ended. + + + The gesture was not recognized. + + + The gesture is in progress and may still become recognizable.. + + + The gesture state is being updated. + + + A layout that arranges views in rows and columns. + + + The following example shows a basic use: + + + The following shows Grids on the various platforms: + + + + It is convenient for the layout class arranges to store row and column indices of each of its child elements. Additionally, when a element is laid out with a grid, application developers can access and change the child's position and span from the child itself by using the , , , , static methods, and the equivalent static methods for columns and column spans. + The class has the following XAML properties. + + + Property + Value + + + Children + + Nested visual elements that are displayed in the Grid. + + + + ColumnDefinitions + + A list of ColumnDefinition specifications. See . + + + + ColumnSpacing + An integer. + + + RowDefinitions + + A list of RowDefinition specifications. See . + + + + RowSpacing + + An integer. + + + + The class has the following XAML attached properties. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + ColumnSpan + An integer that represents the number of Columns that the item will span. + + + Row + + An integer that represents the row in which the item will appear. + + + + RowSpan + + An integer that represents the number of rows that the item will span. + + + + The documentation for the following member methods contains XAML syntax examples: + + + + + Initializes a new instance of the Grid class. + + + + Gets the collection of child elements of the Grid. + The collection of child elements. + + Application developers can use implicit collection syntax in XAML to add items to this collection, because this property is the ContentPropertyAttribute for the Grid class. + + + + Provides the interface for the bound property that gets or sets the ordered collection of objects that control the layout of columns in the . + A ColumnDefinitionCollection for the Grid instance. + + ColumnDefinitions is an ordered set of ColumnDefinition objects that determine the width of each column. Each successive ColumnDefintion controls the width of each successive column. If ColumnDefinitions is empty, or if there are more columns than definitions, then columns for which there is no definition are rendered as if they were controlled by a ColumnDefinition object that has its property set to . + The property has XAML syntax support. The syntax for this operation is shown below. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the zero-based column index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Provides the interface for the bound property that gets or sets the distance between columns in the Grid. + The space between columns in this layout. + + The property does not control spacing on the left and right edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of columns that a child element spans. See Remarks. + + The interface for this property is defined by the and methods. + + + + An element that belongs to the Grid layout. + Gets the column of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the Column in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Column attached property. + + + + An element that belongs to the Grid layout. + Gets the column span of the child element. + The column that the child element is in. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the number of Columns that the item will span. + + + + The remarks for the method contain syntax for and information about the ColumnSpan attached property. + + + + An element that belongs to the Grid layout. + Gets the row of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + The remarks for the method contain syntax for and information about the Row attached property. + + + + An element that belongs to the Grid layout. + Gets the row span of the child element. + The row that the child element is in. + + The method corresponds to the following XAML attached properties: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + The remarks for the method contain syntax for and information about the RowSpan attached property. + + + + Invalidates the grid layout. + To be added. + + + X-coordinate of the top left corner of the bounding rectangle. + Y-coordinate of the top left corner of the bounding rectangle. + Width of the bounding rectangle. + Height of the bounding rectangle. + + Lays out the child elements when the layout is invalidated. + + To be added. + + + The element that was added. + Method that is called when a child is added to this element. + + + + The element that was removed. + Method that is called when a child is removed from this element. + To be added. + + + The requested width. + The requested height. + Method that is called when an attempt is made to resize this element. + + The new requested size. + + To be added. + + + Provides the interface for the bound property that gets or sets the collection of RowDefinition objects that control the heights of each row. + A RowDefinitionCollection for the Grid instance. + + RowDefinitions is an ordered set of objects that determine the height of each column. Each successive RowDefintion controls the width of each successive column. If RowDefinitions is empty, or if there are more rows than definitions, then rows for which there is no definition are rendered as if they were controlled by a RowDefinition object that has its property set to . + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + To be added. + + + Implements the attached property that represents the zero-based row index of a child element. See Remarks. + + The interface for this property is defined by the and methods. + + + + Gets or sets the amount of space left between rows in the Grid. This is a bindable property. + The space between rows + + The property does not control spacing on the top and bottom edges of the layout. Application developers can control the spacing around the outside of the layout by setting the property of the visual element to which it belongs. + + + + Implements the property, and allows the class to bind it to properties on other objects at run time. + + + + Implements the attached property that represents the number of rows that a child element spans, and allows the class to bind it to properties on other objects at run time. + + The interface for this property is defined by the and methods. + + + + A child element of this Grid to move to a different column. + The column in which to place the child element. + Changes the column in which a child element will be placed. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + ColumnSpan + + An integer that represents the Column in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new column span. + The new column span. + Changes the column span of the specified child element. + + The method corresponds to the value that is set by the following XAML attached property. + + + Attached Property + Value + + + Column + + An integer that represents the number of Columns that the item will span. + + + + + + + A child element of this Grid to move to a different row. + The row in which to place the child element. + Changes the row in which a child element will be placed. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + Row + + An integer that represents the row in which the item will appear. + + + + + + + A child element of this Grid on which to assign a new row span. + The new row span. + Changes the row span of the specified child element. + + The method corresponds to the following XAML attached property: + + + Attached Property + Value + + + RowSpan + An integer that represents the number of rows that the item will span. + + + + + + The type of elements in the grid. + List interface with overloads for adding elements to a grid. + + + + The view to add. + The column to add the view to. + The row to add the view to. + Adds a view to the List at the specified location with a RowSpan and HeightSpan of 1. + + + + The view to add. + The left edge of the column span. Must be greater than 0. + The right edge of the column span. Must be greater than left. + The top edge of the row span. Must be greater than 0. + The bottom edge of the row span. Must be greater than top. + Adds a view to the List at the specified row and column spans. + + + + The views to add. + Add a collection views to the List such that they are horizontally stacked to the right of the current contents of the Grid. + The final span of each view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is horizontally stacked to the right of the current contents of the Grid. + The final span of the view is defined to be the height of the grid at the add time, and one column wide at the end of the current arrangement. + + + The views to add. + Add a collection views to the List such that they are vertically stacked below the current contents of the Grid. + The final span of each view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + The view to add. + Add a view to the List such that it is vertically stacked below the current contents of the Grid. + The final span of the view is defined to be the width of the grid at the add time, and one row tall at the end of the current arrangement. + + + Used to define the size (width/height) of Grid ColumnDefinition and RowDefinition. + + GridLength of type GridUnitType.Absolute represents exact size. The ones of type GridUnitType.Auto adapts for fitting the size of the elements in the gird column/row. GridLenght of type GridUnitType.Star are used to split the available size in proportional buckets. + This valuetype is readonly. + + + + To be added. + Initializes a new Absolute GridLength. + This is striclty equivalent to new GridLength (value, GridUnitType.Absolute). + + + The size of the GridLength. + The GridUnitType (Auto, Star, Absolute) of the GridLength. + Initializes a new GridLength. + + + + A ready to reuse GridLength of GridUnitType.Auto. + + Value has no meaning for GridLength ot type GridUnitType.Auto. + + + A GridLength to compare to. + Test the equality of this GridLength and another one. + true is the GridLength are equal. False otherwise. + + + + Returns a value that is used for efficient storage of this object in collections. + To be added. + overriden. + + + Gets or sets the GridUnitType of the GridLength + The GridUnitType of the GridLength + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Absolute. + true if the GridUnitType of the GridLength is GridUnitType.Absolute + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Auto. + true if the GridUnitType of the GridLength is GridUnitType.Auto + + + + Gets wether or not the GridUnitType of the GridLength is GridUnitType.Star. + true if the GridUnitType of the GridLength is GridUnitType.Star + + + + The absolute size + Casting operator to convert a double into a GridLength of type GridUnitType.Absolute + A GridLength of type GridUnitType.Absolute and of size absolutesize + + + + Gets the Value of the GridLength. + The value in GridUnitType of the GridLength. + + + + A that converts from strings to s. + + The following example shows some uses of : + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Enumerates values that control how the property is interpreted for row and column definitions. + To be added. + + + Interpret the property value as the number of device-specific units. + To be added. + + + Ignore the property value and choose a size that fits the children of the row or column. + To be added. + + + Interpret the property value as a proportional weight, to be laid out after rows and columns with or are accounted for. + After all the rows and columns of type and are laid out, each of the corresponding remaining rows or columns, which are of type , receive a fraction of the remaining available space. This fraction is determined by dividing each row's or column's property value by the sum of all the row or column property values, correspondingly, including its own. + + + An abstract attribute whose subclasses specify the platform-specific renderers for Xamarin.Forms abstract controls. + To be added. + + + To be added. + To be added. + Creates a new object that maps events from to . + To be added. + + + Returns a Boolean value that indicates whether the runtime should automatically register the handler for the target. + To be added. + To be added. + + + A WebViewSource bound to an HTML-formatted string. + To be added. + + + Creates a new empty object with default values. + To be added. + + + The base URL for the source HTML document. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + The HTML content. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Defines an interface for elements that can be animated. + To be added. + + + Implement this method to begin a batch of animations that have been committed. + To be added. + + + Implement this method to commit a batch of animations so that they can be run with the method. + To be added. + + + Interface defining the type of and . + + Objects of type are parameterized with a type of . + + + + + + + Event that is raised when the size of the row or column changes. + To be added. + + + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + When implemented in a derived class, sets the value on bound properties so that their bindings are preserved. + To be added. + + + To be added. + To be added. + Sets a bound property value from a renderer without breaking the binding. + To be added. + + + The base interface all gesture recognizers must implement. + This interface is currently empty, this will likely change. + + + Interface indicating layout behavior and exposing the event. + To be added. + + + Event that is raised when the layout changes. + To be added. + + + + that holds an image. + + + The following example creates a new image from a file + + + + + The FormsGallery sample, which can be found on the Sample Applications page, has a ImageDemoPage.cs file. This file contains a longer and more complicated example. + + + + Initializes a new instance of the Image class. + + + The following example creates a new image from a file + + + + + + + + Gets or sets the scaling mode for the image. This is a bindable property. + A representing the scaling mode of the image. Default is . + + + + Identifies the Aspect bindable property. + + + + Gets the loading status of the image. This is a bindable property. + A indicating if the image is loadin. Default is false. + + + The following example illustrates running a to indicate that the image is loading: + + + + + + + Identifies the IsLoading bindable property. + This bindable property is readonly. + + + Gets or sets the opacity flag for the image. This is a bindable property. + A indicating the value for the property. Default is false. + If true, you'll be able to see through transparent parts of the image. + + + Identifies the IsOpaque bindable property. + + + + Invoked when the BindingContext changes. + Overriden for Image. + + + The name of the property. + Invoked when a property has changed. + Overriden for Image. + + + The name of the property. + Invoked when a property will change. + Overriden for Image. + + + The available width. + The available height. + Invoked when the layotu cycle request the element desired size. + + Overriden for Image. + + + Gets or sets the source of the image. This is a bindable property. + An representing the image source. Default is null. + + + + Identifies the Source bindable property. + + + + A that has an image. + + + objects are used to place images and accompanying text into a table. + + The following example shows a basic use. + + + + + + + + + Initializes a new instance of the ImageCell class. + + + + Gets or sets the ImageSource from which the Image is loaded. This is a bindable property. + + + + + Identifies the ImageSource bindable property. + + + + Overriden.. + + + + Abstract class whose implementors load images from files or the Web. + To be added. + + + Request a cancel of the ImageSource loading. + An awaitable Task. The result of the Task indicates if the Task was successfully cancelled. + Calling Cancel() multiple times will throw an exception. + + + Gets the CancellationTokenSource. + + Used by inheritors to implement cancellable loads. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A string representing the id of the EmbeddedResource to load. + Creates an ImageSource for an EmbeddedResource included in the Assembly from which the call to FromResource is made. + A newly created ImageSource. + + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + To be added. + Returns a new that reads from . + To be added. + To be added. + + + A bool indicating if the source was cancelled. + Called by inheritors to indicate the end of the loading of the source. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate the beginning of a loading operation. + OnLoadingCompleted should follow a OnLoadingStarted. + + + Called by inheritors to indicate that the source changed.. + To be added. + + + To be added. + Allows implicit casting from a string that represents an absolute URI. + To be added. + To be added. + + + To be added. + Allows implicit casting from objects that were created with an absolute URI. + To be added. + To be added. + + + Gets or sets the element to which this object belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Interface abstracting platform-specific navigation. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + The page to add. + The existing page, before which will be inserted. + Inserts a page in the navigation stack before an existing page in the stack. + To be added. + + + Gets the modal navigation stack. + To be added. + To be added. + + + Gets the stack of pages in the navigation. + To be added. + To be added. + + + Asynchronously removes the most recent from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the most recent from the navigation stack, with optional animation. + To be added. + To be added. + + + Asynchronously dismisses the most recent modally presented . + An awaitable Task<Page>, indicating the PopModalAsync completion. The Task.Result is the Page that has been popped. + + The following example shows PushModal and PopModal usage: + + + + + Application developers must the result of and . Calling may cause a deadlock if a previous call to or has not completed. + + + + + To be added. + Asynchronously dismisses the most recent modally presented , with optional animation. + To be added. + To be added. + + + Pops all but the root off the navigation stack. + A task representing the asynchronous dismiss operation. + To be added. + + + To be added. + Pops all but the root off the navigation stack, with optional animation. + To be added. + To be added. + + + The to be pushed on top of the navigation stack. + Asynchronously adds a to the top of the navigation stack. + A task representing the asynchronous dismiss operation. + + + The following example shows and usage: + + + + + + + + To be added. + To be added. + Asynchronously adds a to the top of the navigation stack, with optional animation. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + + The following example shows PushModalAsync and PopModalAsync usage: + + + + + + + To be added. + To be added. + Presents a modally, with optional animation. + To be added. + To be added. + + + To be added. + Removes the specified page from the navigation stack. + To be added. + + + The base class of a view which can take keyboard input. + The constructor of this class is internal. Forms does not provide any renderer for InputView base class. + + + Gets or sets the Keyboard for the InputView. This is a bindable property. + The to use for the InputView. + + + + Identifies the Keyboard bindable property. + + + + To be added. + Interface defining a container for s and exposing a property. + To be added. + + + Gets the current page. + To be added. + To be added. + + + Interface defining the abstraction of a native platform. + To be added. + + + The binding context for the native platform. + To be added. + To be added. + + + Event that is raised when the binding context changes. + To be added. + + + The platform engine, useful for getting the screen size and for finding out if the paltform supports 3D. + To be added. + To be added. + + + Gets the root page of the platform. + To be added. + To be added. + + + To be added. + Sets the root page of the platform. + To be added. + + + Interface defining a native platform rendering engine. + To be added. + + + To be added. + To be added. + To be added. + Performs a size request on the native platform. + To be added. + To be added. + + + Gets a Boolean value that indicates whether the native platform supports 3D graphics. + To be added. + To be added. + + + Internally-used flagging interface indicating types that can be registered with . + To be added. + + + The type of visual that the items will be templated into. + A base class for a view that contains a templated list of items. + + + This class is used as a base class for views that wish to take in a list of user objects and produce views for each of them to be displayed, such as . The generic + argument is used to specify the type of visual that the view expects. In the case of , only subclasses are accepted, so that's + what it provides as its argument. + + + + + The user object + Creates a default instance for . + An instance of the class. + + This method is called by the templating system when is . + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + Gets or sets the source of items to template and display. + To be added. + + While any implementer is accepted, any that do not implement or + (where T is a class) will be converted to list by iterating. + If your collection implements , any changes raised from the event on this interface will be reflected in the items view. Note that if the event + is raised on another thread the main thread, the results will be unpredictable depending on the platform. To safely modify your collection (and raise the event) from another thread, call + to enable proper synchronization of access to the thread. + + + + Identifies the property. + + + + Gets or sets the to apply to the . + The for the , or + + The ItemTemplate is used to define the visual appearance of objects from the . Through + the item template you can set up data bindings to the user objects supplied to automatically fill in the visual and respond to any changes in the user + object. + If the item template is , is called and the result is used as the visual. + + In this example, a template for a is created for a simple user object. + + + + + + + + + Identifies the property. + + + + The visual content to setup. + The index of the content. + Performs any additional setup for the content at creation time. + + This method is called when the is creating visuals for user items. At this point, + the will have been set. You can override this method to perform additional setup + for content specific to your subclass. , for example, uses + this method to set to itself. + + + + To be added. + Creates a default TVisual by using + To be added. + To be added. + + + To be added. + To be added. + Configures . + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + To be added. + Creates a new object for the specified that was tapped and the to which it belongs. + To be added. + + + The collection of elements to which the tapped item belongs. + To be added. + To be added. + + + The visual element that the user tapped. + To be added. + To be added. + + + Event args when an items visiblity has been changed in a . + + + + The modified item. + Initializes a new instance of the ItemVisibilityEventArgs class with the item whose visibility has changed. + + + + The item from the whose visibility has changed. + An object. + + + + Interface defining methods for two-way value conversion between types. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert to by using and . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Implement this method to convert back from by using and . + To be added. + To be added. + + + To be added. + The type of element that can be added to the container. + + + + The children collection of a visual element. + The collection containing the visual elements children. + + + + Contains methods that set values from renderers on bound properties without breaking the binding. + To be added. + + + Method that is called when the native size of a visual element changes. + To be added. + + + When implemented in a renderer, called to invalidate the layout when the native size of a visual element changes. + To be added. + + + Default keyboard and base class for specialized keyboards, such as those for telephone numbers, email, and URLs. + To be added. + + + Gets an instance of type "ChatKeyboard". + To be added. + To be added. + + + To be added. + Returns a new keyboard with the specified . + To be added. + To be added. + + + Gets an instance of type "Keyboard". + To be added. + To be added. + + + Gets an instance of type "EmailKeyboard". + To be added. + To be added. + + + Gets an instance of type "NumericKeyboard". + To be added. + To be added. + + + Gets an instance of type "TelephoneKeyboard". + To be added. + To be added. + + + Gets an instance of type "TextKeyboard". + To be added. + To be added. + + + Gets an instance of type "UrlKeyboard".. + To be added. + To be added. + + + Flagging enumeration for Keyboard options such as Capitalization, Spellcheck, and Suggestions. + To be added. + + + Capitalize the first words of sentences, and perform spellcheck and offer suggested word completions on text that the user enters. + + + Capitalize the first words of sentences. + + + Perform spellcheck on text that the user enters. + + + Offer suggested word completions on text that the user enters. + + + A that converts a string into a . + + The following XAML snippet illustrates a case where a KeyboardTypeConverter is used behind the scenes: + + + ]]> + + The following shows some examples of forms: + + { + {"Keyboard.Default", Keyboard.Default}, + {"Keyboard.Email", Keyboard.Email}, + {"Keyboard.Text", Keyboard.Text}, + {"Keyboard.Url", Keyboard.Url}, + {"Keyboard.Telephone", Keyboard.Telephone}, + {"Keyboard.Chat", Keyboard.Chat}, +}) +Assert.AreSame (kvp.Value, converter.ConvertFrom (kvp.Key)); + ]]> + + + + + Initializes a new instance of the KayboardTypeConverter class. + + + + The type of the object. + Returns wheher this converter can convert an object of the given type. + + if the KeyboardTypeConverter can convert from sourceType. otherwise. + This method only returns is sourceType is . + + + The Culture fo the value parameter. + The object to convert from. + TConvert the given value into a Keyboard. + A . + This will throw an IvalidOperationException if the conversion failed. + + + A that displays text. + + A Label is used to display single-line text elements as well as multi-line blocks of text. + + + + The following example, adapted from the default Xamarin Forms solution, shows a basic use: + + + The FormsGallery sample, which can be found on the Sample Applications page, has a LabelDemoPage.cs file. This file contains a longer and more complete example. + + The class has the following XAML properties: + + + Property + Value + + + Font + + Deprecated. Use FontAttributes, FontFamily, and FontSize, instead. A string of the format [name],[attributes],[size]. The font specification may contain multiple attributes, e.g. Georgia, Bold, Italic, 42. + + + + FontAttributes + + + Bold, Bold,Italic, or None. + + + + FontFamily + + A font family, such as sans-serif or monospace. + + + + FontSize + + A named size, such as Large, or an integer that represents the size in device units. + + + + + LineBreakMode + + A string that corresponds to a enumeration value. + + + + Text + + The text that will appear on the label. + + + + TextColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + XAlign + + + Center, End, or Start, to indicate the horizontal placement of the label text. + + + + YAlign + + + Center, End, or Start, to indicate the vertical placement of the label text. + + + + + + + Initializes a new instance of the Label class. + + + + Gets or sets the Font for the Label. This is a bindable property. + The value for the Label. The default is , which represents the default font on the platform. + + + + Gets a value that indicates whether the font for the label is bold, italic, or neither. + To be added. + To be added. + + + Backing store for the FontAttributes property. + To be added. + + + Gets the font family to which the font for the label belongs. + To be added. + To be added. + + + Backing store for the FontFamily property. + To be added. + + + Backing store for the Font bindable property. + + + + Gets the size of the font for the label. + To be added. + To be added. + + + Backing store for the FontSize property. + To be added. + + + Gets or sets the formatted text for the Label. This is a bindable property. + The value to be displayed inside of the Label. This is a bindable property. + Setting FromattedText to a non-null value will set the Text property to null. + + + + Backing store for the FormattedText property. + To be added. + + + Gets or sets the LineBreakMode for the Label. This is a bindable property. + The value for the Label. The default is + + + + Backing store for the LineBreakMode bindable property. + + + + Gets or sets the text for the Label. This is a bindable property. + The value to be displayed inside of the Label. + Setting Text to a non-null value will set the FormattedText property to null. + + + + Gets or sets the for the text of this Label. This is a bindable property. + The value. + + + + Backing store for the TextColor bindable property. + + + + Backing store for the Text bindable property. + + + + Gets or sets the horizontal alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is left-aligned. + + + + Backing store for the XAlign bindable property. + + + + Gets or sets the vertical alignment for the Text inside of the Label bound. + The value. The default is , i.e. the text is top-aligned. + + + + Backing store for the YAlign bindable property. + + + + + Provides the base class for all Layout elements. Use Layout elements to position and size child elements in Forms applications. + + + Subtypes of include , , and , as shown in the following diagram. + The property of contains a list of children of the parameterized type T, which must be a type of . Since is itself a subclass of , this allows s to hold sub-layouts, scrolling regions, etc. + + + + The class has the following XAML properties: + + + Property + Value + + + IsClippedToBounds + + + true or false, to indicate whether the layout is clipped to its bounding rectangle. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + + + + + + + Intitializes a new instance. + To be added. + + + Forces a layout cycle on the element and all of its descendants. + + Calling ForceLayout frequently can have negative impacts on performance. + + + + The available width that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent Layout can allocate to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the Layout. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + + + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of the app. Overriding GetSizeRequest should only be done if the developer wants to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + + + Invalidates the current layout. + Calling this method will invalidate the measure and triggers a new layout cycle. + + + Gets or sets a value which determines if the Layout should clip its children to its bounds. + + if the Layout is clipped; otherwise, . The default value is . + To be added. + + + Identifies the bindable property. + + + + Occurs at the end of a layout cycle if any of the child element's have changed. + + Developers wishing to implement animations may wish to begin them at the end of a LayoutChanged event. + + + + The child element to be positioned. + The bounding region in which the child should be positioned. + Positions a child element into a bounding region while respecting the child elements and . + This method is called in the layout cycle after the general regions for each child have been calculated. This method will handle positioning the element relative to the bounding region given if the bounding region given is larger than the child's desired size. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a Layout. + Implementors wishing to change the default behavior of a Layout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The view to lower in the visual stack. + Sends a child to the back of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which the children are enumerated. + + + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + To be added. + + + The child element whose preferred size changed. + The event data. + Invoked whenever a child of the layout has emitted . Implement this method to add class handling for this event. + This method has a default implementation and and application developers must call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has a default implementation which triggers the layout cycle of the Layout to begin. + + + Gets or sets the inner padding of the Layout. + The Thickness values for the layout. The default value is a Thickness with all values set to 0. + + + The padding is the space between the bounds of a layout and the bounding region into which its children should be arranged into. + + + The following example shows setting the padding of a Layout to inset its children. + + + + + + + + Identifies the Padding bindable property. + + + + The view to raise in the visual stack. + Sends a child to the front of the visual stack. + Children are internally stored in visual stack order. This means that raising or lowering a child also changes the order in which they are enumerated. + + + To be added. + When implemented, should return if should call , and to return if it should not. + To be added. + To be added. + + + To be added. + When implemented, should return if should call when it is removed, and to return if it should not. + To be added. + To be added. + + + Instructs the layout to relayout all of its children. + This method starts a new layout cycle for the layout. Invoking this method frequently can negatively impact performance. + + + The subclass of the layout contains. + A base implementation of a layout with undefined behavior and multiple children. + + + s contain that are of the type T with which the was specified. This T must be of type . Since s are subclasses of , this means that layouts may be nested, contain scrolling regions, etc. + + The following image shows the relationship between , , , and important subtypes. + + + + + The following example shows adding and removing elements from a layout. + + + layout, IEnumerable newItems) + { + layout.Children.Clear (); + foreach (var item in newItems) { + layout.Children.Add (item); + } + } + ]]> + + + + + Provides the base initialization for objects derived from the Layout<T> class. + + + + Gets an IList<View> of child element of the Layout. + A IList<View>. The default is an empty list. + + + The Children collection of a Layout contains all the children added throught the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a layout, setting a property, and adding the children in the object initializer. + + + + + + + + The view which was added. + Invoked when a child is added to the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + The view which was removed. + Invoked when a child is removed from the layout. Implement this method to add class handling for this event. + This method is different from in that it provides a typed child consistent with the type of the Layout<T>. + + + Values that represent LayoutAlignment. + To be added. + + + The center of an alignment. + + + The end of an alignment. Usually the Bottom or Right. + + + Fill the entire area if possible. + + + The start of an alignment. Usually the Top or Left. + + + A struct whose static members define various alignment and expansion options. + To be added. + + + An alignment value. + Whether or not an element will expand to fill available space in its parent. + Creates a new object with and . + To be added. + + + Gets or sets a value that indicates how an element will be aligned. + The flags that describe the behavior of an element. + To be added. + + + A structure that describes an element that is centered and does not expand. + To be added. + + + A structure that describes an element that is centered and expands. + To be added. + + + A structure that describes an element that appears at the end of its parent and does not expand. + To be added. + + + A object that describes an element that appears at the end of its parent and expands. + To be added. + + + Gets or sets a value that indicates whether or not the element that is described by this structure will occupy the largest space that its parent will give to it. + Whether or not the element that is described by this structure will occupy the largest space that its parent will give it. if the element will occupy the largest space the parent will give to it. if the element will be as compact as it can be. + To be added. + + + A stucture that describes an element that has no padding around itself and does not expand. + To be added. + + + A structure that describes an element that has no padding around itself and expands. + To be added. + + + A structure that describes an element that appears at the start of its parent and does not expand. + To be added. + + + A structure that describes an element that appears at the start of its parent and expands. + To be added. + + + Enumeration specifying various options for line breaking. + To be added. + + + Wrap at character boundaries. + + + Truncate the head of text. + + + Truncate the middle of text. This may be done, for example, by replacing it with an ellipsis. + + + Do not wrap text. + + + Truncate the tail of text. + + + Wrap at word boundaries. + + + An that displays a collection of data as a vertical list. + + + + + The following example shows a basic use: + + people = new List + { + new Person("Abigail", new DateTime(1975, 1, 15), Color.Aqua), + new Person("Bob", new DateTime(1976, 2, 20), Color.Black), + // ...etc.,... + new Person("Yvonne", new DateTime(1987, 1, 10), Color.Purple), + new Person("Zachary", new DateTime(1988, 2, 5), Color.Red) + }; + + // Create the ListView. + ListView listView = new ListView + { + // Source of data items. + ItemsSource = people, + + // Define template for displaying each item. + // (Argument of DataTemplate constructor is called for + // each item; it must return a Cell derivative.) + ItemTemplate = new DataTemplate(() => + { + // Create views with bindings for displaying each property. + Label nameLabel = new Label(); + nameLabel.SetBinding(Label.TextProperty, "Name"); + + Label birthdayLabel = new Label(); + birthdayLabel.SetBinding(Label.TextProperty, + new Binding("Birthday", BindingMode.OneWay, + null, null, "Born {0:d}")); + + BoxView boxView = new BoxView(); + boxView.SetBinding(BoxView.ColorProperty, "FavoriteColor"); + + // Return an assembled ViewCell. + return new ViewCell + { + View = new StackLayout + { + Padding = new Thickness(0, 5), + Orientation = StackOrientation.Horizontal, + Children = + { + boxView, + new StackLayout + { + VerticalOptions = LayoutOptions.Center, + Spacing = 0, + Children = + { + nameLabel, + birthdayLabel + } + } + } + } + }; + }) + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + listView + } + }; + } + } +} + +]]> + + The class has the following XAML properties: + + + Property + Value + + + + HasUnevenRows + + + true or false, to indicate whether the items in the list all have the same height. + + + + IsGroupingEnabled + + + true or false, to indicate whether grouping is enabled. + + + + RowHeight + + An integer that describes the height of the items in the list. This is ignored if HasUnevenRows is true. + + + + + + + + Creates and initializes a new instance of the class. + + + + The item to create a default visual for. + Creates an instance of the default visual representation of an item. + + A instance with its text set to the string representation of the object (). + + + + This method is called by the templating system when is . + + + The of the returned object will automatically be set to , there is no + need to set it yourself. If you do, it will be overridden. + + + + + Gets or sets the binding to use for display the group header. + The instance to apply to grouped lists, or . + + + This binding can be used to simply set a the text of the group headers without defining a full template and uses the default visuals + of the platform to display it. The binding is applied to the of the group. + + + This property is mutually exclusive with property. Setting it will set + to . + + + + This example shows an alphabetized list of people, grouped by first initial with the display binding set. + + + { + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } + } + ]]> + + + + + Identifies the property. + + + + Gets or sets a for group headers. + The for group headers, or . + + + Use this property to define a template for a that will be used as the header for groups in this + . The will be the + for each group. + + + GroupHeaderTemplate is mutually exclusive with . Setting this property + will set to . + + Empty groups will still display a group header. + + + + + + + Identifies the property. + + + + Gets or sets a binding for the name to display in grouped jump lists. + The instance to apply to grouped lists, or . + + + When grouping items in a , it is often useful to have jump lists to jump to specific + sections in the list. For example, in an alphabetically grouped lists, the jump list would be the the letter of each group. + This binding is applied against the of each group to select the short name to display + in the jump list. + + + Note: On Android, there is no displayed jump list. + + + + This example shows an alphabetized list of people, grouped by first initial with the short name binding set. + + +{ + public Group (string firstInitial) + { + FirstInitial = firstInitial; + } + + public string FirstInitial + { + get; + private set; + } +} + ]]> + + + + + Identifies the property. + + + + Gets or sets a Boolean value that indicates whether this element has uneven rows. + + if this control has uneven rows. Otherwise, + + + When the property is , the property is ignored for each child element that has a value that is greater than 0, in which case that element's value is used, instead. If a child element's property is equal to 0, then the value is used for that element. + + Setting this property to does not enable automatic sizing of cells. iOS as a platform must have a size specified ahead of time and due to this restriction you must set . + + + + Identifies the property. + + + + Gets or sets whether or not grouping is enabled for . + + if grouping is enabled, otherwise and by default. + + + + + + + Identifies the property. + + + + Occurs when the visual representation of an item is being added to the visual layout. + This method is guaranteed to fire at some point before the element is on screen. + + + Occurs when the visual representation of an item is being removed from the visual layout. + This method is for virtualization usage only. It is not guaranteed to fire for all visible items when the List is removed from the screen. Additionally it fires during virtualization, which may not correspond directly with removal from the screen depending on the platform virtualization technique used. + + + Event that is raised when a new item is selected. + To be added. + + + Event that is raised when an item is tapped. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made.. + To be added. + To be added. + + + Gets or sets a value that represents the height of a row. + To be added. + To be added. + + + The backing store for the property. + + + + The item from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the . + + A linear search is done for the item, so if the same reference appears multiple times in the list, the first item will be scrolled to. This includes if grouping is enabled. + + + contains an invalid value for . + + + The item from your to scroll to. + The group from your to scroll to. + How the item should be positioned on screen. + Whether or not the scroll should be animated. + Scrolls the ListView to the in the + + A linear search is done for the item, so if the same reference appears multiple times in the , the first item will be scrolled to. The same item in a different group will be ignored. + + + contains an invalid value for . + + + is . + + + Gets or sets the currently selected item from the . + The selected item or if no item is selected. + + + + Identifies the property. + + + + To be added. + To be added. + Makes this element the of the . + To be added. + + + To be added. + Raises the event for . + To be added. + + + To be added. + Raises the event for . + To be added. + + + Enumerates values that control how detail content is displayed in a master-detail page. + To be added. + + + To be added. + + + Details pop over the page. + + + Details are always displayed in a split screen. + + + Details are displayed in a split screen when the device is in landscape orientation. + + + Details are displayed in a split screen when the device is in portrait orientation. + + + A that manages two panes of information: A master page that presents data at a high level, and a detail page that displays low-level details about information in the master. + + The following example code, taken from the FormsGallery sample application, creates a that allows the user to view detailed information about a color that she chooses from a list. Note that the NamedColorPage class, defined in as a sublcass of in another file in the sample application, simply displays RGB data, a with its background color set to the color that the user selected, and, finally, hue, saturation, and luminosity data. + The sample below illustrates three key concepts. First, the "Master" portion of the MasterDetailPage is represented by the property, which is set to a element in this example. This element contains a label and a list of colors. Second, the "Detail" portion of the is represented by the property, which, in this example, is set to the NamedColorPage that was noted above. Third, and finally, the page that is represented by the property is displayed by setting the property to ; That is, the property controls whether or not the page that is represented by the is presented to the user. + The page must have its property set. Additionally, the page will only display a navigation bar if it is an instance of . + + + { + this.IsPresented = true; + })); + } + + // Define a selected handler for the ListView. + listView.ItemSelected += (sender, args) => + { + // Set the BindingContext of the detail page. + this.Detail.BindingContext = args.SelectedItem; + + // Show the detail page. + this.IsPresented = false; + }; + + // Initialize the ListView selection. + listView.SelectedItem = namedColors[0]; + + + } + } +} + ]]> + + + The Windows Phone and Android platforms do not support sliding the detail screen in order to show or hide it. Use a to allow the user to show and hide the Detail screen on these platforms. On Windows Phone, consider using a user interface class that provides an experience that is more consistent with that platform, such as . + + + + + Creates a new empty . + To be added. + + + Gets or sets the detail page that is used to display details about items on the master page. + To be added. + To be added. + + + Gets or sets a value that turns on or off the gesture to reveal the master page. This is a bindable property. + + if gesture is enabled; otherwise . Default is . + Has no effect on Windows Phone. + + + Backing store for the IsGestureEnabled bindable property. + + + + Gets or sets a value that indicates whether or not the visual element that is represented by the property is presented to the user. + To be added. + Setting this property causes the event to be raised. + + + Event that is raised when the visual element that is represented by the property is presented or hidden. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Lays out the master and detail pages. + To be added. + + + Gets or sets the master page. + To be added. + To be added. + + + Gets or sets a value that indicates how detail content is displayed. + To be added. + To be added. + + + Backing store for the MasterBehavior property. + To be added. + + + Event that is raised when a detail appears. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Event that is raised when a detail disappears. + To be added. + + + Method that is called when the property of this is set. + To be added. + + + To be added. + To be added. + To be added. + + + Class that presents a menu item and associates it with a command. + + The class has the following XAML properties: + + + Property + Value + + + Command + + A binding to a command. + + + + CommandParameter + + A parameter to pass to the command. + + + + + IsDestructive + + + true or false, to indicate whether the command deletes an item in a list. + + + + Text + + The text to display on the menu item. + + + + + + + Intitializes a new instance. + To be added. + + + Event that is raised when the menu item is clicked. + To be added. + + + Gets or sets the command that is run when the menu is clicked. + To be added. + To be added. + + + Gets or sets the parameter that is passed to the command. + To be added. + To be added. + + + Identifies the command parameter bound property. + To be added. + + + Identifies the command bound property. + To be added. + + + Gets or sets the icon for the menu item. + To be added. + To be added. + + + Identfies the icon bound property. + To be added. + + + Gets or sets a value that indicates whether or not the menu item removes its associated UI element. + To be added. + To be added. + + + Identifies the IsDestructive bound property. + To be added. + + + When overriden by an app dev, implements behavior when the menu item is clicked. + To be added. + + + The text of the menu item. + To be added. + To be added. + + + Identifies the text bound property. + To be added. + + + Associates a callback on subscribers with a specific message name. + + The following shows a simple example of a strongly-typed callback using is: + + (subscriber, "IntPropertyMessage", (s, e) => { + subscriber.IntProperty = e; +}); + +//...later... + +MessagingCenter.Send(this, "IntPropertyMessage", 2); +Assert.AreEqual(2, subscriber.IntProperty); + ]]> + + + + + To be added. + To be added. + To be added. + Sends a named message that has no arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Sends a named message with the specified arguments. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + To be added. + Run the on in response to parameterized messages that are named and that are created by . + To be added. + + + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterless subscriber messages. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Unsubscribes from the specified parameterized subscriber messages. + To be added. + + + The particular subclass of that the MultiPage services. + A bindable, templatable base class for pages which contain multiple sub-pages. + + Provides a base implementation for binding and templating pages. + The class has the following XAML properties: + + + Property + Value + + + ItemsSource + + XAML extension markup that specifies a static collection of data objects. + + + + ItemTemplate + + XAML markup that describes a view that has bindings to properties on the members of the collection that is specified by ItemsSource. + + + + + + + Provides the base initialization for objects derived from the MultiPage<T> class. + + provides two classes that are derived from , and . + + + + Gets an IList<Page> of child elements of the MultiPage. + A IList<Page>. The default is an empty list. + + + The collection of a contains all the children added through the public add/remove interface. Internal children will not be exposed through this collection. + + + The following shows the creation of a , which descends from . + + + + + + + + The object which the default page should be templated from. + Create default provides a default method of creating new pages from objects in a binding scenario. + The newly created page. + Most implementors will not need to use or override CreateDefault. + + + Gets or sets the currently selected page. + The current page. The default value is null. + The default page will usually get set when the multi-page is displayed or templated. + + + Raised when the property changes. + + + + The source for the items to be displayed. + To be added. + To be added. + + + Identifies the property. + To be added. + + + The template for displaying items. + To be added. + To be added. + + + Identifies the bindable property. + + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + The child that was added. + Called when a child has been added to the . + + + + Raises the event. + + + + To be added. + Called when the pages of the have been changed. + To be added. + + + The name of the property that was changed. + Called when a bindable property has changed. + + + + Raised when the children pages of the have changed. + To be added. + + + The currently selected item. + The selected item from the or if nothing selected. + + + + Identifies the bindable property. + + + + To be added. + To be added. + When overriden in a derived class, performs initialization of . + To be added. + + + To be added. + Sets the page that is specified by as the default page. + To be added. + To be added. + + + To be added. + To be added. + Performs initialization of . + To be added. + + + Class that represents a list of property and binding conditions, and a list of setters that are applied when all of the conditions in the list are met. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property whose value to compare against Value. + + + + Conditions + + A list of PropertyCondition and/or BindingCondition markup instances that specify the conditions that all must be met before all of the setters that are listed in Setters are applied. + + + + Setters + + A list of setters that are applied when all of the property conditions are met. Each Setter tag or tag pair in the list has a Property and Value that represents the assignments to perform when the condition is met. + + + + + + + To be added. + Initializes a new instance. + To be added. + + + Gets the list of conditions that must be satisfied in ordeer for the setters in the list to be invoked. + To be added. + To be added. + + + Gets the list of objects that will be applied when the list of conditions in the property are all met. + To be added. + To be added. + + + Represents pre-defined font sizes. + The exact pixel-value depends on the platform on which Forms runs. + + + The default font size. + + + A Large font size, for titles or other important text elements. + + + A default font size, to be used in stand alone labels or buttons. + + + The smallest readable font size for the device. Think about this like legal footnotes. + + + A small but readable font size. Use this for block of text. + + + Extension methods for and that add strongly-typed FindByName methods. + To be added. + + + To be added. + To be added. + To be added. + Returns the instance of type that has name in the scope that includes . + To be added. + To be added. + + + EventArgs for the NavigationPage's navigation events. + + + + + + + The page that was popped or is newly visible. + + + + + Gets the page that was removed or is newly visible. + + + For , this is the that was removed. For + and it is the newly visible page, the pushed page or the root respectively. + + + + A that manages the navigation and user-experience of a stack of other pages. + + Note that on the Android platform, operations do not generate activity lifecycle notifications. For each that you push or pop, the Android implementation of simply adds or removes the content of the page to or from a single activity. + Also note that the Windows Phone platform provides navigation natively. Therefore, you do not need to use a object to get navigation on that platform. + + + + Initializes a new object. + To be added. + + + To be added. + Creates a new element with as its root element. + To be added. + + + Identifies the property associated with the title of the back button. + To be added. + + + Gets or sets the background color for the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar background color. + To be added. + + + Gets or sets the text that appears on the bar at the top of the NavigationPage. + + + + + Identifies the property associated with the color of the NavigationPage's bar text color. + To be added. + + + The that is currently top-most on the navigation stack. + To be added. + To be added. + + + Identifies the property. + + + + The whose back-button's title is being requested. + The title of the back button for the specified . + The title of the back button that would be shown if the specified were the . + To be added. + + + To be added. + Returns a value that indicates whether has a back button. + To be added. + To be added. + + + The being queried. + Returns a value that indicates whether the has a navigation bar. + + if would display a navigation bar were it the . + To be added. + + + The whose title icon is being set. + Retrieves the path to the file providing the title icon for the . + The path to the file providing the title icon for the . + To be added. + + + Backing store for the HasBackButton property. + To be added. + + + Backing store for the HasNavigationBar property. + To be added. + + + Event that is raised when the back button is pressed. + To be added. + To be added. + + + Asynchronously removes the top from the navigation stack. + The that had been at the top of the navigation stack. + To be added. + + + To be added. + Asynchronously removes the top from the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised after a page is popped from this element. + To be added. + + + Event that is raised when the last nonroot element is popped from this element. + To be added. + + + Pops all but the root off the navigation stack. + A task that represents the asynchronous dismiss operation. + To be added. + + + To be added. + A task for asynchronously popping all pages off of the navigation stack. + To be added. + To be added. + + + The to present modally. + Presents a modally. + An awaitable Task, indicating the PushModal completion. + To be added. + + + To be added. + To be added. + A task for asynchronously pushing a page onto the navigation stack, with optional animation. + To be added. + To be added. + + + Event that is raised when a page is pushed onto this element. + To be added. + + + To be added. + To be added. + Sets the title that appears on the back button for . + To be added. + + + To be added. + To be added. + Adds or removes a back button to , with optional animation. + To be added. + + + To be added. + To be added. + Sets a value that indicates whether or not this element has a navigation bar. + To be added. + + + The whose title icon is being set. + The FileImageSource of the icon. + Sets the title icon of the to the icon file at . + + + + + + + + + + + The color to be used as the Tint of the . + To be added. + + Tint is especially important in iOS 7 and later, where the Tint is primary way to specify which controls on screen are active or have an action associated with them. + + + + Identifies the bindable property. + To be added. + + + Indicates the / property. + To be added. + + + To be added. + Provides idiom-specific implementation of T for the current TargetIdiom. + + + + Initializes a new instance of OnIdiom + + + + To be added. + Implicitly converts OnIdiom to T, depending on Device.Idiom. + The value of the Phone or Tablet property, depending on the current Device.Idiom. + + + + Gets or sets the value applied on Phone-like devices. + A T. + + + + Gets or sets the value applied on Tablet-like devices. + A T. + + + + To be added. + Provides the platform-specific implementation of T for the current . + To be added. + + + Creates a new instance of the type. + To be added. + + + The type as it is implemented on the Android platform. + To be added. + To be added. + + + The type as it is implemented on the iOS platform. + To be added. + To be added. + + + To be added. + Casts the type to the version that corresponds to the platform. + To be added. + To be added. + + + The type as it is implemented on the WinPhone platform. + To be added. + To be added. + + + A that displays OpenGL content. + + + s are easiest to program using Shared Projects, in which case the reference to OpenTK is straightforward. The following example shows a simple OpenGL app with a render loop: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + + toggle.Toggled += (s, a) => { + view.HasRenderLoop = toggle.IsToggled; + }; + button.Clicked += (s, a) => view.Display (); + + var stack = new StackLayout { + Padding = new Size (20, 20), + Children = {view, toggle, button} + }; + + Content = stack; + } + } +} + ]]> + + + + + + + + Creates a new object with default values. + To be added. + + + Called prior to rendering. + To be added. + + + Whether this has a custom rendering loop. + To be added. + To be added. + + + Identifies the bindable property. + To be added. + + + Overridden to create a custom rendering loop. + To be added. + + When overridden, creates a custom renderer: + + { + + GL.ClearColor (red, green, blue, 1.0f); + GL.Clear ((ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit)); + + red += 0.01f; + if (red >= 1.0f) + red -= 1.0f; + green += 0.02f; + if (green >= 1.0f) + green -= 1.0f; + blue += 0.03f; + if (blue >= 1.0f) + blue -= 1.0f; + }; + ]]> + + + + + A that occupies the entire screen. + + + is primarily a base class for more useful derived types. Objects that are derived from the see class are most prominently used as the top level UI element in Xamarin.Forms applications. Typically, application developers will provide such an object to the target platforms by returning it from a static method that the developer created in a project that references . The contents of a typical App.cs file that would appear in a project that reference are shown below: + + +using Xamarin.Forms; + +namespace MyFirstFormsApp +{ + public class App + { + public static Page GetMainPage() + { + return new ContentPage { + Content = new Label { + Text = "Hello, Forms!", + VerticalOptions = LayoutOptions.CenterAndExpand, + HorizontalOptions = LayoutOptions.CenterAndExpand, + } + }; + } + } +} + + While a object was returned in the example above, note that any class that extends could have been passed, instead. For example, by using conditional compilation or by checking the platform, the developr can pass a to Windows Phone applications, in order to better match the style of the user interface on that platform, while passing objects or other Page types to the other platforms. + The other projects in the solution that target the Windows Phone, iOS, and Android platforms can call the GetMainPage method to obtain the descendant that describes the portable user interface. This object can then be used with platform-specific static methods or extension methods to incorporate it into the native UI for each platform. + On all platforms, Application developers must call the method before they get or create any elements. + Each targeted platform uses the returned page in a different way. The Xamarin.Forms.Platform.iOS library provides Xamarin.Forms.Page.CreateViewController() extension method, which returns a UIViewController that application developers can assign to the UIWindow.RootViewController property of the top-level UI. This code is typically placed inside the UIApplicationDelegate.FinishedLaunching override for the main application class. A typical example is shown below: + + +using System; +using Xamarin.Forms; + +namespace MyFirstFormsApp.iOS +{ + [Register("AppDelegate")] + public partial class AppDelegate : UIApplicationDelegate + { + UIWindow window; + + public override bool FinishedLaunching(UIApplication app, + NSDictionary options) + { + Forms.Init(); + + window = new UIWindow(UIScreen.MainScreen.Bounds); + + window.RootViewController = App.GetMainPage().CreateViewController(); + window.MakeKeyAndVisible(); + + return true; + } + } +} + + + + The Xamarin.Forms.Platform.Android.AndroidActivity class provides the Xamarin.Forms.Platform.Android.AndroidActivity.SetPage method, which performs the work that is necessary to make its page argument the top-level UI element of the Xamarin.Forms.Platform.Android.AndroidActivity. A typical example is shown below: + + +using System; +using Android.App; +using Android.OS; +using Xamarin.Forms.Platform.Android; + + +namespace MyFirstFormsApp.Android +{ + [Activity(Label = "MyFirstFormsApp", MainLauncher = true)] + public class MainActivity : AndroidActivity + { + protected override void OnCreate(Bundle bundle) + { + base.OnCreate(bundle); + + Xamarin.Forms.Forms.Init(this, bundle); + + SetPage(App.GetMainPage()); + } + } +} + + + For Windows Phone, provides an extension method for that is called . This method returns a System.Windows.UIElement object that has the page that was passed to it as its current page. A typical example is shown below: + + +using System; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Navigation; +using Microsoft.Phone.Controls; +using Microsoft.Phone.Shell; + +using Xamarin.Forms; + + +namespace MyFirstFormsApp.WinPhone +{ + public partial class MainPage : PhoneApplicationPage + { + public MainPage() + { + InitializeComponent(); + + Forms.Init(); + Content = Phoneword.App.GetMainPage().ConvertPageToUIElement(this); + } + } +} + + In addition to their role as the main pages of applications, objects and their descendants can be used with navigation classes, such as or , among others, to provide rich user experiences that conform to the expected behaviors on each platform. + The class has the following XAML properties: + + + Property + Value + + + BackgroundImage + + A local file specification that identifies an image. + + + + Icon + + A local file specification that identifies an image. + + + + Padding + + A comma-separated list of 4 integers that represent a structure. + + + + Title + + Text that represents the title of the page. + + + + ToolbarItems + + A list of ToolBarItem elements. + + + + + + + Creates a new element with default values. + To be added. + + + Indicates that the is about to appear. + To be added. + + + Identifies the image used as a background for the . + To be added. + To be added. + + + Identifies the property. + To be added. + + + Indicates that the is about to cease displaying. + To be added. + + + Title of the displayed action sheet. + Text to be displayed in the 'Cancel' button. + Text to be displayed in the 'Destruct' button. + Text labels for additional buttons. + Displays a native platform action sheet, allowing the application user to choose from several buttons. + An awaitable Task that displays an action sheet and returns the Text of the button pressed by the user. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with a single cancel button. + To be added. + To be added. + + + The title of the alert dialog. + The body text of the alert dialog. + Text to be displayed on the 'Accept' button. + Text to be displayed on the 'Cancel' button. + Presents an alert dialog to the application user with an accept and a cancel button. + To be added. + To be added. + + + Forces the to perform a layout pass. + To be added. + + + Resource identifier for the 's associated icon. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Marks the Page as busy. This will cause the platform specific global activity indicator to show a busy state. + A bool indicating if the Page is busy or not. + Setting IsBusy to true on multiple pages at once will cause the global activity indicator to run until both are set back to false. It is the authors job to unset the IsBusy flag before cleaning up a Page. + + + Identifies the property. + To be added. + + + Raised when the layout of the has changed. + To be added. + + + Left-hand side of layout area. + Top of layout area. + Width of layout area. + Height of layout area. + Lays out children s into the specified area. + To be added. + + + When overridden, allows application developers to customize behavior immediately prior to the becoming visible. + To be added. + + + Application developers can override this method to provide behavior when the back button is pressed. + To be added. + To be added. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + + Overriders must call the base method. + + + + To be added. + To be added. + Indicates that the preferred size of a child has changed. + To be added. + + + When overridden, allows the application developer to customize behavior as the disappears. + To be added. + + + Called when the 's property has changed. + To be added. + + + The width allocated to the . + The height allocated to the . + Indicates that the has been assigned a size. + To be added. + + + The space between the content of the and it's border. + To be added. + To be added. + + + Identifies the property. + To be added. + + + Calls . + To be added. + To be added. + + + The 's title. + To be added. + To be added. + + + Identifies the property. + To be added. + + + A set of s, implemented in a platform-specific manner. + To be added. + To be added. + + + Requests that the children s of the update their layouts. + To be added. + + + A control for picking an element in a list. + + The visual representation of a Picker is similar to a , but a picker control appears in place of a keyboard. + The following example shows the creation of a Picker. + + nameToColor = new Dictionary + { + { "Aqua", Color.Aqua }, { "Black", Color.Black }, + { "Blue", Color.Blue }, { "Fuschia", Color.Fuschia }, + { "Gray", Color.Gray }, { "Green", Color.Green }, + { "Lime", Color.Lime }, { "Maroon", Color.Maroon }, + { "Navy", Color.Navy }, { "Olive", Color.Olive }, + { "Purple", Color.Purple }, { "Red", Color.Red }, + { "Silver", Color.Silver }, { "Teal", Color.Teal }, + { "White", Color.White }, { "Yellow", Color.Yellow } + }; + + public PickerDemoPage() + { + Label header = new Label + { + Text = "Picker", + Font = Font.BoldSystemFontOfSize(50), + HorizontalOptions = LayoutOptions.Center + }; + + Picker picker = new Picker + { + Title = "Color", + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + foreach (string colorName in nameToColor.Keys) + { + picker.Items.Add(colorName); + } + + // Create BoxView for displaying picked Color + BoxView boxView = new BoxView + { + WidthRequest = 150, + HeightRequest = 150, + HorizontalOptions = LayoutOptions.Center, + VerticalOptions = LayoutOptions.CenterAndExpand + }; + + picker.SelectedIndexChanged += (sender, args) => + { + if (picker.SelectedIndex == -1) + { + boxView.Color = Color.Default; + } + else + { + string colorName = picker.Items[picker.SelectedIndex]; + boxView.Color = nameToColor[colorName]; + } + }; + + // Accomodate iPhone status bar. + this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5); + + // Build the page. + this.Content = new StackLayout + { + Children = + { + header, + picker, + boxView + } + }; + + } + } +} +]]> + + The class has the following XAML properties: + + + Property + Value + + + Items + + A local file specification that identifies an image. + + + + SelectedIndex + + An integer, from 0 to 1 less than the count of items that are listed in Items. Currently, this element must be specified in a tag that appears lexically below Items. + + + + Title + + Text that represents the title of the picker. + + + + + + + + + + Initializes a new instance of the Picker class. + + + + Gets the list of choices. + An IList<string> representing the Picker choices. + This property is read-only, but exposes the IList<> interface, so items can be added using Add(). + + + Gets or sets the index of the slected item of the picker. This is a bindable property. + An 0-based index representing the selected item in the list. Default is -1. + A value of -1 represents no item selected. + + + Raised when the value of the SelectIndex property has changed. + To be added. + + + Identifies the SelectedIndex bindable property. + + + + Gets or sets the title for the Picker. This is a bindable property. + A string. + Depending on the platform, the Title is shown as a placeholder, headline, or not showed at all. + + + Identifies the Title bindable property. + + + + Struct defining a 2-D point as a pair of doubles. + To be added. + + + + that specifies a that has the coordinates (, ). + Creates a new object that has coordinates that are specified by the width and height of , in that order. + To be added. + + + The horizontal coordinate. + The vertical coordinate. + Creates a new object that represents the point (,). + To be added. + + + The to which the distance is calculated. + Calculates the distance between two points. + The distance between this and the . + To be added. + + + Another . + Returns if the X and Y values of this are exactly equal to those in the argument. + + if the X and Y values are equal to those in . Returns if is not a . + + The and values of the are stored as s. Developers should be aware of the precision limits and issues that can arise when comparing floating-point values. In some circumstances, developers should consider the possibility of measuring approximate equality using the (considerably slower) method. + + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Whether both X and Y are 0. + + if both and are 0.0. + To be added. + + + The amount to add along the X axis. + The amount to add along the Y axis. + Returns a new that translates the current by and . + A new at [this.X + dx, this.Y + dy]. + To be added. + + + The to which is being added. + The values to add to . + Returns a new by adding a to a . + A new at [pt.X + sz.Width, pt.Y + sz.Height]. + To be added. + + + A to be compared. + A to be compared. + Whether the two s are equal. + + if the two s have equal values. + To be added. + + + The to be translated as a . + Returns a new whose and and equivalent to the 's and properties. + A new based on the . + To be added. + + + A to be compared. + A to be compared. + Whether two points are not equal. + + if and do not have equivalent X and Y values. + To be added. + + + The from which is to be subtracted. + The whose and will be subtracted from 's and . + Returns a new by subtracting a from a . + A new at [pt.X - sz.Width, pt.Y - sz.Height]. + To be added. + + + Returns a new whose and have been rounded to the nearest integral value. + A new whose and have been rounded to the nearest integral value, per the behavior of Math.Round(Double). + To be added. + + + A human-readable representation of the . + The string is formatted as "{{X={0} Y={1}}}". + To be added. + + + Location along the horizontal axis. + To be added. + To be added. + + + Location along the vertical axis. + To be added. + To be added. + + + The at {0,0}. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that displays progress. + + The following example shows the usage of a ProgressBar. + + + + + + + The class has the following XAML property: + + + Property + Value + + + Progress + + A decimal value between 0 and 1, inclusive, that specifies the fraction of the bar that is colored. + + + + + + + Initializes a new instance of the ProgressBar class + + + + Gets or sets the progress value. This is s bindable property. + Gets or sets a value that specifies the fraction of the bar that is colored. + Values less than 0 or larger than 1 will be clamped to the range [0-1]. + + + Identifies the Progress bindable property. + + + + To be added. + To be added. + To be added. + Animate the Progress property to value. + A Task<bool> you can await on. + + + + Event arguments for the delegate. + To be added. + + + To be added. + Creates a new object that indicates that is changing. + To be added. + + + Gets the name of the property that is changing. + The name of the property that is changing. + To be added. + + + To be added. + To be added. + Delegate for the event. + To be added. + + + Class that represents a value comparison with a property. + + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to check. + + + + Value + + The value for which the condition is met. + + + + + + + Initializes a new instance. + To be added. + + + Gets or sets the property against which the property will be compared. + To be added. + To be added. + + + The binding value that satisfies the condition. + To be added. + To be added. + + + To be added. + Provides a value by using the supplied service provider. + To be added. + To be added. + + + Struct defining a rectangle, using doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + Where Xamarin.Forms supports XAML for structures, app devs can represent the rectangle as a comma-separated list of the X-coordinate, Y-Coordinate, Width, and Height. + + + + To be added. + To be added. + Creates a new object with its top left corner at with a height and width that are specified by . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with its top left corner at (, ) and wide and tall. + To be added. + + + The bottom of the . + To be added. + + Modifying this value also modifies the property. + + + + The halfway between and , and . + To be added. + To be added. + + + The being checked for containment. + Whether the is within, or along the periphery, of this . + + if is within, or along the periphery, of this. + To be added. + + + The being checked for containment. + Whether is entirely within, or along the periphery, of this . + + if the borders of are entirely within, or along the periphery, of this. + To be added. + + + The X location of the point being checked. + The Y location of the point being checked. + Whether the point described by and is within, or along the periphery of, this . + + if the point described by and is within, or along the periphery of, this. + To be added. + + + An Object to compare to this. + Whether an is a and has exactly the same values as this. + + if is a that has exactly the same values as this. + To be added. + + + The being compared to this. + Whether a has exactly the same values as this. + + if has exactly the same values as this. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Factory method to create a from , , , and . + A new whose values are equal to the arguments. + To be added. + + + The hashcode for the . + A value optimized for fast insertion and retrieval in a hash-based data structure. + To be added. + + + Extent along the Y axis. + To be added. + + Modifying this value modifies the property.. + + + Values to inflate all the borders. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by 's and whose and are inflated by 's . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in each dimension by twice . + + + + + + + Value to shift to the left and to the right. + Value to shift upward and downward. + Creates a whose borders are inflated in every direction. + A new whose and are inflated by and whose and are inflated by . + + Application developers should note that since the inflation occurs in every direction, the returned is larger in X by twice and larger in Y by twice . + + + + + + + A this will be intersected with. + A new that is the intersection of this and . + Returns a new that is the intersection of this and , or if there is no intersection. + To be added. + + + A being intersected. + A being intersected. + A new that is the intersection of and . + Returns a new that is the intersection of and , or if there is no intersection. + To be added. + + + The being intersected. + Whether this intersects . + + if this intersects . + To be added. + + + Whether this has either or less than or equal to 0. + + if either or is less than or equal to 0. + To be added. + + + The position of the on the X axis. + To be added. + To be added. + + + The defined by and . + To be added. + To be added. + + + A whose X and Y values should be added to this's . + A new whose is offset by . + A new whose is equal to this's translated by . + To be added. + + + Change along the X axis. + Change along the Y axis. + A new whose is offset by and . + A new whose is equal to this's translated by and . + To be added. + + + A being compared. + A being compared. + Whether two s have equal values. + + if both the and of the two rectangles are equivalent. + To be added. + + + A being compared. + A being compared. + Whether two s have unequal values. + + if either the or of the two rectangles have differences. + To be added. + + + The furthest extent along the X axis. + To be added. + To be added. + + + Returns a new whose values have been rounded to their nearest integral value. + A new whose , , , and have been rounded to their nearest integral values. + + The rounding is applied to each property independently. + + + + The extent of the along its X and Y axes. + To be added. + To be added. + + + The top of the . + To be added. + To be added. + + + A human-readable description of the . + The format is "{X={0} Y={1} Width={2} Height={3}}". + To be added. + + + The whose union is being calculated. + A new whose bounds cover the union of this and . + Returns a new whose bounds cover the union of this and . + To be added. + + + A whose union is being calculated. + A whose union is being calculated. + A new whose bounds cover the union of and . + Returns a new whose bounds cover the union of and . + To be added. + + + The extent of this along the X axis. + To be added. + To be added. + + + The position of this on the X axis. + To be added. + To be added. + + + The position of this on the Y axis. + To be added. + To be added. + + + The at {0,0} whose Size is {0,0}. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A that uses s to layout its children. + + The RelativeLayoutExample class in the following code extends the class by adding a that contains a heading and another label. Both labels are positioned relative to the : + + { + return 0; + })); + + relativeLayout.Children.Add (relativelyPositioned, + Constraint.RelativeToParent ((parent) => { + return parent.Width / 3; + }), + Constraint.RelativeToParent ((parent) => { + return parent.Height / 2; + })); + this.Content = relativeLayout; + } +} +]]> + + For a more complete example that exercises many more of the layout options for the class, see the FormsGallery sample that can be found on the Sample Applications page. + The class has the following XAML attached properties: + + + AttachedProperty + Value + + + XConstraint + + XAML markup extension for a constraint expression. See . + + + + YConstraint + + XAML markup extension for a constraint expression. See . + + + + WidthConstraint + + XAML markup extension for a constraint expression. See . + + + + HeightConstraint + + XAML markup extension for a constraint expression. See . + + + + + + + Creates a new with default values. + To be added. + + + Identifies the bindable property associated with /. + To be added. + + + List of s that are children of this . + To be added. + To be added. + + + The for which the bounds constraint is being requested. + Returns the bounds constraint of the . + The of the . + To be added. + + + The for which the height constraint is being requested. + Returns the height constraint of the . + The on the height of the . + To be added. + + + The for which the width constraint is being requested. + Returns the width constraint of the . + The on the width of the . + To be added. + + + The for which the X constraint is being requested. + Returns the X constraint of the . + The on the X position of the . + To be added. + + + The for which the Y constraint is being requested. + Returns the Y constraint of the . + The on the Y position of the . + To be added. + + + Identifies the bindable property associated with the / methods. + To be added. + + + The left-side bound of the rectangle into which the children will be laid out. + The top bound of the rectangle into which the children will be laid out. + The width of the rectangle into which the children will be laid out. + The height of the rectangle into which the children will be laid out. + Lays out the in the specified rectangle. + To be added. + + + The added to the . + Called when a is added to the collection. + To be added. + + + The removed from the collection. + Called when a is removed from the collection. + To be added. + + + To be added. + To be added. + Called when this has received a size request. + To be added. + To be added. + + + The to which the constraint will be applied. + The on the . + Sets as a constraint on the bounds of . + To be added. + + + Identifies the width constraint. + To be added. + + + Identifies the constraint on X. + To be added. + + + Identifies the constraint on Y. + To be added. + + + To be added. + An of s used by a . + To be added. + + + To be added. + To be added. + Constrains to and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains to the rectangle that is defined by , , , and , and adds it to the layout. + To be added. + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constrains by , , , and , and adds it to the layout. + To be added. + + + Associate view with renderer. + Lazily assoicate a view with it's renderer. + + + The view to render. + The view to render. + The view to render. + + + The renderer for this view. + The renderer for this view. + The renderer for this view. + + + An IDictionary that maps identifier strings to arbitrary resource objects. + To be added. + + + Creates a new empty object. + To be added. + + + To be added. + + Add an implicit Style to the ResourceDictionary. Implicit Styles are applied to all VisualElements matching TargetType in the descendants of this ResourceDictionary owner, unless a Style is explicitely applied to the Element. + + Implicit Styles are added to a ResourceDictionary in XAML by not specifying an x:Key for the Element. + + To be added. + + + The identifier to be used to retrieve the . + The associated with the . + Adds and to the as a key-value pair. + To be added. + + + Empties the . + To be added. + + + The identifier being searched for. + Whether the contains a key-value pair identified by . + To be added. + To be added. + + + The number of entries in the . + To be added. + To be added. + + + Returns a of the 's s. + To be added. + To be added. + + + The identifier of the desired object. + Retrieves the value associated with the key . + To be added. + To be added. + + + The collection of identifier s that are keys in the . + To be added. + To be added. + + + The identifier of the key-value pair to be removed. + Removes the key and value identified by from the . + + if the key existed and the removal was successful. + To be added. + + + To be added. + Adds an item to the collection. + To be added. + + + To be added. + Returns a value that indicates whether the dictionary contains the value in , indexed by the key in . + To be added. + To be added. + + + To be added. + To be added. + Copies the values in the dictionary to , starting at position in . + To be added. + + + Gets a value that indicates whether the resource dictionary is read-only. + To be added. + To be added. + + + To be added. + Removes the value in , indexed by the key in , from the dictionary, if present. + To be added. + To be added. + + + Returns a of the 's s. + An of the 's s. + To be added. + + + The identifier of the object to be retrieved. + An reference to the object being retrieved, or it's default value. + Retrieves the object specified by or, if not present, the default value of . + The object specified by or, if not present, the default value of . + To be added. + + + Retrieves the values of the . + To be added. + To be added. + + + An that defines properties for a row in a . + + The class has the following XAML property: + + + Property + Value + + + Height + + "*" or "Auto" to indicate the corresponding enumeration values, or a number to indicate an absolute height. + + + + + App developers can specify values for the property in XAML. This is typically done inside tags for the collection property. The following example demonstrates setting three row heights to each of the three valid values: + + + + + +]]> + + + + + Creates a new object with default values. + To be added. + + + Gets or sets the height of the row. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the size of the row is changed. + To be added. + + + A for s. + To be added. + + + Creates a new empty object. + To be added. + + + Enumeration specifying vertical or horizontal scrolling directions. + To be added. + + + Scroll Horizontally. + + + Scroll vertically. + + + Enumerates values that describe a scroll request. + To be added. + + + Scroll to the center of a list. + + + Scroll to the end of a list. + + + Scroll to make a specified list item visible. + + + Scroll to the start of a list. + + + An element capable of scrolling if its Content requires. + + The following example shows the creation of a ScrollView with a large in it. + + + + Application developers should not nest one within another. Additinoally, they should refrain from nesting them other elements that can scroll, such as . + + + + The class has the following XAML properties: + + + Property + Value + + + Content + + Markup that specifies a to display in the . + + + + Orientation + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance of the ScrollView class. + + + + Gets or sets a to display in the . + The that is displayed. + + + + Gets the size of the Content. This is a bindable property. + A that represents the size of the content. + + + + Identifies the ContentSize bindable property. + This bindable property is read-only. + + + A value that represents the x coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + A value that represents the y coordinate of the child region bounding box. + Positions and sizes the content of a ScrollView. + + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + + A which contains the desired size of the element. + + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the scrolling direction of the ScrollView. This is a bindable property. + + + + + Identifies the Orientation bindable property. + + + + A control that provides a search box. + + The following example shows a basic use. + + >(); + resultsLabel.Text = ""; + + // Get Xamarin.Forms assembly. + Assembly xamarinFormsAssembly = typeof(View).GetTypeInfo().Assembly; + + // Loop through all the types. + foreach (Type type in xamarinFormsAssembly.ExportedTypes) + { + TypeInfo typeInfo = type.GetTypeInfo(); + + // Public types only. + if (typeInfo.IsPublic) + { + // Loop through the properties. + foreach (PropertyInfo property in typeInfo.DeclaredProperties) + { + // Check for a match + if (property.Name.Equals(searchText)) + { + // Add it to the list. + list.Add(Tuple.Create(type, property.PropertyType)); + } + } + } + } + + if (list.Count == 0) + { + resultsLabel.Text = + String.Format("No Xamarin.Forms properties with " + + "the name of {0} were found", + searchText); + } + else + { + resultsLabel.Text = "The "; + + foreach (Tuple tuple in list) + { + resultsLabel.Text += + String.Format("{0} type defines a property named {1} of type {2}", + tuple.Item1.Name, searchText, tuple.Item2.Name); + + if (tuple != list.Last()) + { + resultsLabel.Text += "; and the "; + } + } + + resultsLabel.Text += "."; + } + } + } +}]]> + + + + + The class has the following XAML properties: + + + Property + Value + + + CancelButtonColor + + A color specification, with or without the prefix, "Color". For example, "Color.Red" and "Red" both specify the color red. + + + + Placeholder + + The default text that will appear in the search bar when it is empty. + + + + SearchCommand + + XAML markup extension that describes a binding to a command. + + + + SearchCommandParameter + + The parameter for the search command. + + + + Text + + The initial text that will appear in the search bar. + + + + + + + Creates a new . + To be added. + + + Gets or sets the color of the cancel button. + To be added. + To be added. + + + Backing store for the CancelButtonColor property. + To be added. + + + Gets or sets the text that is displayed when the is empty. + The text that is displayed when the is empty. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when the user presses the Search button. + To be added. + + + Gets or sets the command that is run when the user presses Search button. + The command that is run when the user presses Search button. + To be added. + + + Gets or sets the parameter that is sent to the . + The parameter that is sent to the . + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets the text that is displayed in the . + The text that is displayed in the . + To be added. + + + Event that is raised when the property is changed. For example, this event is raised as the user edits the text in the SearchBar. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for the event. + To be added. + + + To be added. + Creates a new event that indicates that the user has selected . + To be added. + + + Gets the new selected item. + To be added. + To be added. + + + Represents an assignment of a property to a value, typically in a style or in response to a trigger. + + Setters are used with triggers and styles. + The class has the following XAML properties: + + + Property + Value + + + Property + + The name of the property to set. + + + + Value + + The value to apply to the property. + + + + + + + Creates a new object. + To be added. + + + The property on which to apply the assignment. + To be added. + + Only bindable properties can be set with a .. + + + The value to assign to the property. + To be added. + To be added. + + + To be added. + + + + To be added. + To be added. + + + Defines extensions methods for IList<Setter> + + + + + + To be added. + To be added. + To be added. + Add a Setter with a value to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a Binding to the IList<Setter> + To be added. + + + To be added. + To be added. + To be added. + Add a Setter with a DynamicResource to the IList<Setter> + To be added. + + + Struct defining height and width as a pair of doubles. + + Application developers should be aware of the limits of floating-point representations, specifically the possibility of incorrect comparisons and equality checks for values with small differences. David Goldberg's paper What Every Computer Scientist Should Know About Floating-Point Arithmetic describes the issues excellently. + + + + To be added. + To be added. + Creates a new object with and . + To be added. + + + The object to which this is being compared. + Whether this is equivalent to . + + if is a whose values are identical to this's and . + To be added. + + + The to which this is being compared. + Whether this is equivalent to . + + if 's values are identical to this's and . + To be added. + + + Returns a hash value for the . + A value intended for efficient insertion and lookup in hashtable-based data structures. + To be added. + + + Magnitude along the vertical axis, in platform-specific units. + To be added. + To be added. + + + Whether the has and of 0.0. + + if both and are 0.0. + To be added. + + + A to be added. + A to be added. + Returns a new whose and are the sum of the component's height and width. + A whose is equal to s1.Width + s2.Width and whose is equal to sz1.Height + sz2.Height. + To be added. + + + A to be compared. + A to be compared. + Whether two s have equal values. + + if and have equal values for and . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + The to be converted to a . + Returns a new based on a . + A whose and are equal to 's and , respectively. + To be added. + + + To be added. + To be added. + Whether two s have unequal values. + + if and have unequal values for either or . + + Application developers should be aware that and are stored internally as s. Values with small differences may compare incorrectly due to internal rounding limitations. + + + + A to be scaled. + A factor by which to multiple 's and values. + Scales both and . + A new whose and have been scaled by . + To be added. + + + A from whose values a size will be subtracted. + The to subtract from . + Returns a new whose and are 's height and width minus the values in . + A whose is equal to s1.Width - s2.Width and whose is equal to sz1.Height - sz2.Height. + To be added. + + + Returns a human-readable representation of the . + The format has the pattern "{Width={0} Height={1}}". + To be added. + + + Magnitude along the horizontal axis, in platform-defined units. + To be added. + To be added. + + + The whose values for height and width are 0.0. + To be added. + + + Struct defining minimum and maximum s. + To be added. + + + To be added. + Creates a new object with default values. + To be added. + + + To be added. + To be added. + Creates a new object that requests at least the size , but preferably the size . + To be added. + + + The minimum acceptable size. + To be added. + To be added. + + + The requested size. + To be added. + To be added. + + + To be added. + To be added. + To be added. + + + A control that inputs a linear value. + + + + + The class has the following XAML properties: + + + Property + Value + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + + + + Initializes a new instance of the Slider class. + + The following example shows a basic use. + + + + + + + The minimum selectable value. + The maximum selectable value. + The actual value. + Initializes a new instance of the Slider class. + + + + Gets or sets the maximum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Maximum bindable property. + + + + Gets or sets the minimum selectable value for the Slider. This is a bindable property. + A double. + + + + Identifies the Minimum bindable property. + + + + Gets or sets the current value. This is a bindable property. + A double. + + + + The ValueChanged event is fired when the Value property changes. + + + + Identifies the Value bindable property. + + + + Represents a part of a FormattedString. + To be added. + + + Initialize a new instance of the Span class. + To be added. + + + Gets or sets the Color of the span background. + To be added. + Not supported on WindowsPhone. + + + Gets or sets the Font for the text in the span. + To be added. + To be added. + + + Gets a value that indicates whether the font for the span is bold, italic, or neither. + To be added. + To be added. + + + Gets the font family to which the font for the text in the span belongs. + To be added. + To be added. + + + Gets the size of the font for the text in the span. + To be added. + To be added. + + + Gets or sets the Color for the text in the span. + To be added. + To be added. + + + Event that is raised when a property is changed. + To be added. + + + Gets or sets the text of the span. + To be added. + To be added. + + + A that positions child elements in a single line which can be oriented vertically or horizontally. + + Because layouts override the bounds on their child elements, application developers should not set bounds on them. + + The following example code, adapted from the FormsGallery example shows how to create a new with children that explore many of the layout behaviors of : + + + + + + The class has the following XAML properties: + + + Property + Value + + + Orientation + + + Horizontal or Vertical. The default is Vertical. + + + + Spacing + + An integer or decimal. + + + + + + + Initializes a new instance of the StackLayout class. + + + The following example shows the initialization of a new StackLayout and setting its orientation and children. + + + + + + + + To be added. + To be added. + + + A value representing the x coordinate of the child region bounding box. + A value representing the y coordinate of the child region bounding box. + A value representing the width of the child region bounding box. + A value representing the height of the child region bounding box. + Positions and sizes the children of a StackLayout. + Implementors wishing to change the default behavior of a StackLayout should override this method. It is suggested to still call the base method and modify its calculated results. + + + The available width for the StackLayout to use. + The available height for the StackLayout to use. + This method is called during the measure pass of a layout cycle to get the desired size of the StackLayout. + A which contains the desired size of the StackLayout. + The results of this method will be a sum of all the desired sizes of its children along the orientation axis, and the maximum along the non-orientation axis. + + + Gets or sets the value which indicates the direction which child elements are positioned. + A which indicates the direction children layouts flow. The default value is Vertical. + Setting the Orientation of a StackLayout triggers a layout cycle if the stack is already inside of a parent layout. To prevent wasted layout cycles, set the orientation prior to adding the StackLayout to a parent. + + + Identifies the Orientation bindable property. + + + + Gets or sets a value which indicates the amount of space between each child element. + A value in device pixels which indicates the amount of space between each element. The default value is 6.0. + + + Setting this value triggers a layout cycle if the StackLayout is already in a parent Layout. + + + The following example sets the Spacing on construction of a StackLayout. + + + + + + + + Identifies the Spacing bindable property. + + + + The orientations the a StackLayout can have. + + + + StackLayout should be horizontally oriented. + + + StackLayout should be vertically oriented. + + + A control that inputs a discrete value, constrained to a range. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + Increment + + An integer or decimal literal. + + + + Maximum + + An integer or decimal literal. + + + + Minimum + + An integer or decimal literal. If this value is nonnegative, it must appear lexically below Maximum, so that validation can succeed. + + + + Value + + An integer or decimal literal that represents a number that is in the range[Minimum,Maximum]. + + + + ValueChanged + The name of an event handler. Note that this tag must appear below Value. + + + + + + Initializes a new instance of the Stepper class. + To be added. + + + The minimum selectable value. + The maximum selectable value. + The current selected value. + The increment by which Value is increased or decreased. + Initializes a new instance of the Stepper class. + To be added. + + + Gets or sets the increment by which Value is increased or decreased. This is a bindable property. + A double. + + + + Identifies the Increment bindable property. + To be added. + + + Gets or sets the maximum selectable value. This is a bindable property. + A double. + To be added. + + + Identifies the Maximum bindable property. + To be added. + + + Gets or sets the minimum selectabel value. This is a bindable property. + A double. + To be added. + + + Identifies the Minimum bindable property. + To be added. + + + Gets or sets the current value. This is a bindable property. + A double. + To be added. + + + Raised when the property changes. + To be added. + + + Identifies the Value bindable property. + To be added. + + + + that loads an image from a . + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Method that is called when the property that is specified by is changed.. + To be added. + + + Gets or sets the delegate responsible for returning a for the Image. + + + + + Backing store for the property. + To be added. + + + Class that contains triggers, setters, and behaviors that completely or partially define the appearance and behavior of a class of visual elements. + + The class has the following XAML properties: + + + Property + Value + + + BasedOn + + A StaticResource markup extension that names the style on which this style is based. + + + + BaseResourceKey + + A resource dictionary key that names a dynamic base style. + + + + Behaviors + + Markup for the behaviors that are associated with the style. + + + + Setters + + A list of setters containing Property and Value elements or attributes. + + + + TargetType + + The name of the type that the style is intended for. + + + + Triggers + + A list of triggers. + + + + + + + To be added. + Intitializes a new instance. + To be added. + + + The on which this is based. + To be added. + The supports a mechanism in XAML that is similar to inheritance in C#. + + + Gets or sets the key that identifies the on which this is based. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + Gets the type of object that this style can describe. + To be added. + To be added. + + + Gets the list of objects that belong to this . + To be added. + To be added. + + + A control that provides a toggled value. + + The following example describes a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + IsToggled + + + true or false, to indicate whether the switch has been toggled. + + + + Toggled + + The name of an event handler. Note that this tag must appear below IsToggled. + + + + + + + Creates a new element with default values. + To be added. + + + Gets or sets a Boolean value that indicates whether this element is toggled. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event that is raised when this is toggled by the user. + To be added. + + + A with a label and an on/off switch. + + The following example shows a basic use. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + On + + + true or false, to indicate whether the switch cell is in the "on" position. + + + + OnChanged + + The name of an event handler. Note that this tag must appear below On. + + + + Text + + Text that represents the title of the switch cell. + + + + + + + Initializes a new instance of the SwitchCell class. + To be added. + + + Gets or sets the state of the switch. This is a bindable property. + Default is . + To be added. + + + Triggered when the switch has changed value. + To be added. + + + Identifies the bindable property. + To be added. + + + Gets or sets the text displayed next to the switch. This is a bindable property. + + To be added. + + + Identifies the Text bindable property. + To be added. + + + + that displays an array of tabs across the top of the screen, each of which loads content onto the screen. + + The user interface of a tabbed page consists of a list of items across the top of the screen, and a larger detail area below. The user can scroll the collection of tabs that are across the top of the screen if that collection is too large to fit on one screen. App developers can create tabbed pages in either of two ways. First, application developers can assign a list of objects of a single class, or its subclasses, to the property and assign a to the property to return pages for objects of the least derived type. Second, app developers can add a succession of objects to the property. Both methods are shown in the code examples below. + + The following example code, adapted for brevity from the FormsGallery sample that can be found on the Sample Applications page, shows how to display data of a specific type by assigning a to the property. Note how NamedColorPage gets its color by binding its field. + { + return new NamedColorPage (); + }); + } + } + + // Data type: + class NamedColor + { + public NamedColor (string name, Color color) + { + this.Name = name; + this.Color = color; + } + + public string Name { private set; get; } + + public Color Color { private set; get; } + + public override string ToString () + { + return Name; + } + } + + // Format page + class NamedColorPage : ContentPage + { + public NamedColorPage () + { + // This binding is necessary to label the tabs in + // the TabbedPage. + this.SetBinding (ContentPage.TitleProperty, "Name"); + // BoxView to show the color. + BoxView boxView = new BoxView { + WidthRequest = 100, + HeightRequest = 100, + HorizontalOptions = LayoutOptions.Center + }; + boxView.SetBinding (BoxView.ColorProperty, "Color"); + + // Build the page + this.Content = boxView; + } + } +} + + +]]> + + + The example below creates a tabbed view with two instances. + + + + + + + + + Creates a new element with default values. + To be added. + + + An object for which to create a default page. + Creates a default page, suitable for display in this page, for an object. + A page that is titled with the string value of . + This returns a new object that has its property set to the value of when called on . + + + Called when the parent is set. + This method iterates up the hierarchy and writes a message to the debug listeners if it detects a . Application developers are advised that adding a to a may produce undesirable results. + + + TableIntent provides hints to the renderer about how a table will be used. + Using table intents will not effect the behavior of a table, and will only modify their visual appearance on screen, depending on the platform. Not all intents are unique on all platforms, however it is advisable to pick the intent which most closely represents your use case. + + + A table intended to contain an arbitrary number of similar data entries. + + + A table which is used to contain information that would normally be contained in a form. + + + A table intended to be used as a menu for selections. + + + A table containing a set of switches, toggles, or other modifiable configuration settings. + + + A that contains either a table section or the entire table. + To be added. + + + Constructs and initializes a new instance of the class. + To be added. + + + The title of the table. + Constructs and initializes a new instance of the class with a title. + To be added. + + + A logical and visible section of a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new with the title . + To be added. + + + Abstract base class defining a table section. + + + + + The class has the following XAML property: + + + Property + Value + + + Title + + A title for the section. + + + + + + + Creates a new object with default values. + To be added. + + + To be added. + Creates a new object with the specified . + To be added. + + + Gets or sets the title. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + To be added. + + Table section that contains instances of type T that are rendered by Xamarin.Forms. + + + Sections are used to group cells in the screen and they are the + only valid direct child of the . Sections can contain + any of the standard s, including new s. + + + s embedded in a section are used to navigate to a new + deeper level. + + + You can assign a header and a footer either as strings (Header and Footer) + properties, or as Views to be shown (HeaderView and FooterView). Internally + this uses the same storage, so you can only show one or the other. + + Subtypes of are and , as shown in the following diagram: + + + + + + + + Constructs a new instance with an empty title. + + To be added. + + + To be added. + + Constructs a new instance with the specified . + + To be added. + + + The items to add. + Adds a list of items to this object. + To be added. + + + The item to add. + Adds an item to this object. + To be added. + + + Removes all items in this . + To be added. + + + Event that is raised when one or more items is added to or removed from this object. + To be added. + + + The object for which to determine whether or not this object has a reference. + Returns a Boolean value that indicates whether or not this has a reference to a particular object. + + if this object contains a reference to . Otherwise, . + To be added. + + + To be added. + To be added. + Copies the elements of the current collection to an , starting at the specified index. + To be added. + + + Gets the number of items in this object. + The number of items in this object. + To be added. + + + Returns an enumerator that iterates through the items in this object. + To be added. + To be added. + + + The instance for which to find its index. + Returns the index of the first occurrence of in this object. + The index of the first occurrence of in this object. + To be added. + + + The position at which to insert . + The item to insert. + Inserts an item into this object at the specified position. + To be added. + + + The location of the item to return. + Returns the item that is stored at the location in this object that is specified by . + To be added. + To be added. + + + Calls the method, passing the new binding context, on each of the items in this object. + To be added. + + + To be added. + Removes a specified item from this object. + + , if item was removed from the current collection; if item was not found in the current collection.. + To be added. + + + The position in this object from which to remove an item. + Removes a specified item from this object at the position that is specified by . + To be added. + + + Returns ; The collection of objects in this can be changed. + + ; The collection of objects in this object can be changed. + To be added. + + + Returns an enumerator that iterates through the collection of objects in this object. + To be added. + To be added. + + + A that holds rows of elements. + + A has a as its property. The is a type of . + The following example shows a basic table with two sections. + + + + + + + The class has the following XAML properties: + + + Property + Value + + + HasUnevenRows + + + true or false, to indicate whether rows in the table view will specify their own height. + + + + Intent + + + Data, Form, Menu, or Settings. + + + + RowHeight + + + Horizontal or Vertical, to indicate the scroll direction. + + + + + + + Initializes a new instance. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether the rows that are contained in this can have uneven rows. + To be added. + + When the property is , application developers can set the properties to control the height of items in the table. When the property is , the property is ignored. When the property is , app developers can set the property to set the height of all Cells, and their individual properties are ignored. + + + + Backing store for the HasUnevenRows property. + To be added. + + + Gets or sets the intent of the table. + To be added. + To be added. + + + Method that is called when the binding context changes. + To be added. + + + Method that is called when the model changes. + To be added. + + + To be added. + To be added. + Method that is called when a size request is made. + To be added. + To be added. + + + Gets or sets the root of the table. + To be added. + To be added. + + + Gets or sets the row height. + To be added. + To be added. + + + Backing store for the row height property. + To be added. + + + Provides tap gesture recognition and events. + Can be used to recognize single and multiple tap gestures. + + + Initializes a new instance of a TapGestureRecognizer object. + + + + An action whose first argument is the View the recognizer is associated with and whose second argument is the callback parameter. + Initializes a new instance of a TapGestureRecognizer object with a parameterized callback. + + + + An action whose first argument is the View the recognizer is associated with. + Initializes a new instance of a TapGestureRecognizer object with a callback. + + + + The Command to invoke when the gesture has been triggered by the user. This is a bindable property. + To be added. + The object passed to the Command will be the contents of + + + An object to be passed to the TappedCallback. This is a bindable property. + To be added. + To be added. + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + The number of taps required to trigger the callback. This is a bindable property. + The number of taps to recognize. The default value is 1. + + + + Identifies the NumberOfTapsRequired bindable property. + To be added. + + + Event that is raised when the user taps. + To be added. + + + The action to invoke when the gesture has been triggered by the user. This is a bindable property. + An action that will be invoked. + The object passed to the callback will be the contents of . + + + An object to be passed to the TappedCallback. This is a bindable property. + An object. + The primary use case for this property is Xaml bindings. + + + Identifies the TappedCallbackParameter bindable property. + + + + Identifies the TappedCallback bindable property. + + + + Arguments for the event. + To be added. + + + To be added. + Creates a new object with the supplied parameter. + To be added. + + + Gets the parameter object for this object. + To be added. + To be added. + + + Indicates the type of device Forms is working on. + + + + (Unused) Indicates that Forms is running on a computer. + + + Indicates that Forms is running on a Phone, or a device similar in shape and capabilities. + + + Indicates that Forms is running on a Tablet. + + + (Unused) Indicates that Forms is running on an unsupported device. + + + Indicates the kind of OS Forms is currently working on. + + + + Indicates that Forms is running on a Google Android OS. + + + Indicates that Forms is running on an Apple iOS OS. + + + (Unused) Indicates that Forms is running on an undefined platform. + + + Indicates that Forms is running on a Microsoft WinPhone OS. + + + Extension class for DataTemplate, providing a string-based shortcut method for defining a Binding. + To be added. + + + To be added. + To be added. + To be added. + Binds the object's to a new instance that was created with . + To be added. + + + Represents vertical and horizontal text alignement. + This affects the way the text is diaplayed inside of its control bounds. + + + Center-aligned text. + + + End-flushed text. It means right-aligned (resp: bottom-aligned) for horizontal (resp vertical) alignemnt. + + + Start-flushed text. It means left-aligned (resp: top-aligned) for horizontal (resp vertical) alignemnt. + + + + A with primary and text. + + + The following example shows a basic use. + + + + + + + + + + Initializes a new instance of the TextCell class. + + + + Gets or sets the ICommand to be executed when the TextCell is tapped. This is a bindable property. + + Setting the Command property has a side effect of changing the Enabled property depending on ICommand.CanExecute. + + + Gets or sets the parameter passed when invoking the Command. This is a bindable property. + + + + + Identifies the CommandParameter bindable property. + + + + Identifies the Command bindable property. + + + + Gets or sets the secondary text to be displayed in the TextCell. This is a bindable property. + + + + + Gets or sets the color to render the secondary text. This is a bindable property. + The color of the text. Color.Default is the default color value. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. + + + Identifies the DetailColor bindable property. + + + + Gets or sets the secondary text to be displayed. This is a bindable property. + + + + Invoked whenever the Cell is Tapped. + Overriden for TextCell. + + + Gets or sets the primary text to be displayed. This is a bindable property. + + + + + Gets or sets the color to render the primary text. This is a bindable property. + The color of the text. + Not all platforms may support transparent text rendering. Using Color.Default will result in the system theme color being used. Color.Default is the default color value. + + + Identifies the TextColor bindable property. + + + + Identifies the Text bindable property. + + + + Event arguments for TextChanged events. Provides old and new text values. + To be added. + + + To be added. + To be added. + Creates a new with and . + To be added. + + + Gets the new text value. + To be added. + To be added. + + + Gets the old text value. + To be added. + To be added. + + + Struct defining thickness around the edges of a using doubles. + To be added. + + + To be added. + Creates a new object that represents a uniform thickness of size . + To be added. + + + To be added. + To be added. + Creates a new object that has a horizontal thickness of and a vertical thickness of . + To be added. + + + To be added. + To be added. + To be added. + To be added. + Creates a new object with thicknesses defined by , , , and . + To be added. + + + The thickness of the bottom of a rectangle. + To be added. + To be added. + + + A to be compared. + Whether the is a with equivalent values. + + if is a and has equivalent values.. + To be added. + + + A has value for this . + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + The thickness of the left side of a rectangle. + To be added. + To be added. + + + A to be compared. + A to be compared. + Whether two es have identical values. + + if and have identical values for ,, , and . + To be added. + + + The value for the uniform Thickness. + Implicit cast operator from . + A Thickness with an uniform size. + + Application developers should bear in mind that and are the sums of their components, so a created from a of, for instance, 1.0, will have of 2.0. + + + + A to convert to a + Converts a into a . + To be added. + + The 's and are both set equal to the 's and the 's and are both set equal to the 's . + + + + A to be compared. + A to be compared. + Whether the values of two 's have at least one difference. + + if any of the ,, , and values differ between and . + To be added. + + + The thickness of the right side of a rectangle. + To be added. + To be added. + + + The thickness of the top of a rectangle. + To be added. + To be added. + + + The sum of and . + To be added. + To be added. + + + A that converts from a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A control that provides time picking. + + The visual representation of a TimePicker is very similar to the one of , except that a special control for picking a time appears in place of a keyboard. + + The following example shows declaration of a TimePicker with a default time set. + + + + + + + + + + + Initializes a new TimePicker instance. + + + + The format of the time to display to the user. This is a bindable property. + A valid time format string. + Format string is the same is passed to DateTime.ToString (string format). + + + Identifies the Format bindable property. + + + + Gets or sets the displayed time. This is a bindable property. + The displayed in the TimePicker. + To be added. + + + Identifies the Time bindable property. + + + + Event arguments for and events. + To be added. + + + To be added. + Creates a new that indicates that the toggle control was toggled to . + To be added. + + + Gets the Boolean value to which the toggle control was toggled. + To be added. + To be added. + + + An item in a toolbar or displayed on a . + + Any changes made to the properties of the toolbar item after it has been added will be ignored. + Windows Phone ApplicationBarButtons and MenuItems always display an associated text. Therefore, when developing for Windows Phone, application devs should provide a value for the property. Otherwise, the file name of the icon image will be dixplayed as the text of the . (For example, the user might see "menu.png" in the user interface.) + + + + Constructs and initializes a new instance of the class. + + + + To be added. + To be added. + To be added. + To be added. + To be added. + Constructs and initializes a new instance of the class. + + + + Raised when the is touched or clicked. + + + + Gets or sets the to be invoked on activation. + The to be invoked on activation. + + + + Gets or sets the parameter to pass to the that is invoked on activation. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Backing store for the property. + To be added. + + + Gets or sets a string that identifies the image that is displayed on this element. + To be added. + To be added. + + + Gets or sets the name of the . + The name of the toolbar item.. + + + + Gets or sets a value that indicates on which of on the primary, secondary, or default toolbar surfaces to display this element. + To be added. + To be added. + + + Gets or sets the priority of this element. + To be added. + To be added. + + + Gets or sets the toolbar to which this element belongs. + To be added. + To be added. + + + Gets or sets a weak reference to the parent of this object. + To be added. + To be added. + + + Enumeration specifying whether the appears on the primary toolbar surface or secondary. + To be added. + + + Use the default choice for the toolbar item. + + + Place the toolbar item on the primary toolbar surface. + + + Place the toolbar item on the secondary toolbar surface. + + + Class that represents a property condition and an action that is performed when the condition is met. + To be added. + + + To be added. + Initializes a new instance. + To be added. + + + Gets or sets the property whose value will be compared to to determine when to invoke the setters. + To be added. + To be added. + + + Gets the list of objects that will be applied when the property that is named by becomes equal to . + To be added. + To be added. + + + Gets or sets the value of the property, named by the property, that will cause the setters to be applied. + To be added. + To be added. + + + To be added. + This property supports XAML infrastructure and is not intended to be directly used by application developers. + To be added. + To be added. + + + A base class for user-defined actions that are performed when a trigger condition is met. + Application developers should use , instead. + + + The type of the objects with which this can be associated. + Creates a new instance of the TriggerAction class. + + + + Gets the type of the objects with which this can be associated. + To be added. + To be added. + + + To be added. + Application developers override this method to provide the behavior that is triggered. + To be added. + + + The type of which the property must be an instance. + A generic base class for user-defined actions that are performed when a trigger condition is met. + + + + Creates a new instance of the class. + + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + To be added. + Application developers override this method to provide the action that is performed when the trigger condition is met. + To be added. + + + Base class for classes that contain a condition and a list of actions to perform when the condition is met. + + + + Gets the list of objects that will be invoked when the trigger condition is met. Ignored for the class. + + + + + Gets the list of objects that will be invoked after the trigger condition is no longer met. Ignored for the class. + + + + + Gets a value that indicates whether or not the trigger is sealed. + To be added. + A trigger becomes sealed when its method is called. Once it is sealed, its and lists become readonly. + + + The type of object to which this object can be attached. + To be added. + To be added. + + + To be added. + Attempts to attach to . If successful, calls the method. + This method throws an exception if is not an instance of . In that case, the method is not called. + + + To be added. + Attempts to detach from . If successful, calls .. + This method throws an exception if is . In that case, the method is not called. + + + Abstract base class whose subclasses can convert values between different types. + + The following diagram shows subclasses of . + + + + + + + Creates a new object. + To be added. + + + To be added. + When implemented in a derived class, returns a Boolean value that indicates whether or not the derived type converter can convert to its target type. + To be added. + To be added. + + + To be added. + Calls with the current culture information and . + To be added. + To be added. + + + To be added. + To be added. + When implemented in a derived class, converts an object that is a version of and that can be cast to the target type. + To be added. + To be added. + + + Attribute that specifies the type of used by its target. + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Creates a new object that specifies that the class it decorates converts values to the type. + To be added. + + + To be added. + reates a new object that specifies that the class it decorates converts values to . + To be added. + + + The name of the type to which the class decorated with this attribute can convert values. + To be added. + To be added. + + + A that contains no information about the types to which the class that it decorates can convert values. + To be added. + + + To be added. + Returns true if is a and has the same value. + To be added. + To be added. + + + Returns a value that is used for efficient storage and lookup of this object. + To be added. + To be added. + + + Exception indicating that the s specified cannot be simultaneously satisfied. + To be added. + + + A description for this exception. + Creates a new object with the explanatory message. + To be added. + + + An ImageSource that loads an image from a URI, caching the result. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets a structure that indicates the length of time after which the image cache becomes invalid. + To be added. + To be added. + + + Gets or sets a Boolean value that indicates whether caching is enabled on this object. + To be added. + To be added. + + + Gets or sets the URI for the image to get. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A that converts from a string or to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + A WebViewSource bound to a URL. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the URL for this object. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Event arguments for ValueChanged events. Provides both old and new values. + To be added. + + + To be added. + To be added. + Creates a new event with and . + To be added. + + + Gets the new value. + To be added. + To be added. + + + Gets the old value. + To be added. + To be added. + + + Struct defining X and Y double values. + To be added. + + + To be added. + To be added. + Creates a new that is defined by and . + To be added. + + + The horizontal coordinate. + To be added. + + + The vertical coordinate. + To be added. + + + A visual element that is used to place layouts and controls on the screen. + + The class is a base class for the class, and most of the controls that application developers will use. Nearly all UI elements that an application developer will use are derived from class. Because the class ultimately inherits from class, application developers can use the Model-View-ViewModel architecture, as well as XAML, to develop portable user interfaces. The remarks in the topic provide a discussion of MVVM and bound properties. + + + + Initializes a new instance of the View class. + It is unlikely that an application developer would want to create a new View instance on their own. + + + The collection of gesture recognizers associated with this view. + A List of . + + + Adding items to this collection will associate gesture events with this element. This is not nessesary for elements which natively support input, such as a Button. + + + This example creates a tap gesture recognizer and associates it with an image. When the image is double tapped, it will become semi-transparent. + + + image.Opacity = 0.5, + NumberOfTapsRequired = 2 + }; + image.GestureRecognizers.Add (gestureRecognizer); + ]]> + + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the HorizontalOptions modifies how the element is laid out when there is excess space available along the X axis from the parent layout. Additionally it specifies if the element should consume leftover space in the X axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the HorizontalOptions bindable property. + + + + Invoked whenever the binding context of the changes. Override this method to add class handling for this event. + + Overriders must call the base method. + + + + Gets or sets the that define how the element gets laid in a layout cycle. This is a bindable property. + A which defines how to lay out the element. Default value is unless otherwise documented. + + + Assigning the VerticalOptions modifies how the element is laid out when there is excess space available along the Y axis from the parent layout. Additionally it specifies if the element should consume leftover space in the Y axis from the parent layout. If multiple children of a layout are set to expand, the extra space is distributed proportionally. + + + This example creates four views and adds them to a stack, each laying out in a different manner. + + + + + + + + Identifies the VerticalOptions bindable property. + + + + A containing a developer-defined . + + + + Initializes a new instance of the ViewCell class. + + + + Gets or sets the View representing the content of the ViewCell. + + + + + Extension methods for s, providing animatable scaling, rotation, and layout functions. + To be added. + + + To be added. + Aborts the TranslateTo, LayoutTo, RotateTo, ScaleTo, and FadeTo animations on element. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the fade that is described by the , , and parameters. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that eases the bounds of the that is specified by the to the rectangle that is specified by the parameter. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Rotates the that is specified by from its current rotation by . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by from its current scale to . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that performs the rotation that is described by the , , and parameters.. + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the Y axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that skews the X axis by , taking time and using . + To be added. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Returns a task that scales the that is specified by to the absolute scale factor . + To be added. + To be added. + + + The view to tanslate. + The x component of the final translation vector. + The y component of the final translation vector. + The duration of the animation in milliseconds. + The easing of the animation. + Animates an elements TranslationX and TranslationY properties from their current values to the new values. + To be added. + Translate to is particular useful for animations because it is applied post-layout. Translation animations will not conflict with managed layouts and thus are ideal for doing slide in/out style animations. + + + Deprecated. Do not use. + To be added. + + + Deprecated. Do not use. + + + Deprecated. Do not use. + + + Deprecated. Do not use.. + + + A that occupies an area on the screen, has a visual appearance, and can obtain touch input. + + The base class for most Xamarin.Forms on-screen elements. Provides most properties, events, and methods for presenting an item on screen. + + + + Gets or sets the X component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the X component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorX bindable property. + To be added. + + + Gets or sets the Y component of the center point for any transform, relative to the bounds of the element. This is a bindable property. + The value that declares the Y component of the transform. The default value is 0.5. + To be added. + + + + Identifies the AnchorY bindable property. + To be added. + + + Gets or sets the color which will fill the background of a VisualElement. This is a bindable property. + The color that is used to fill the background of a VisualElement. The default is . + To be added. + + + Identifies the BackgroundColor bindable property. + To be added. + + + Signals the start of a batch of changes to the elements properties. + Application authors will not generally need to batch updates manually as the animation framework will do this for them. + + + Signals the end of a batch of commands to the element and that those commands should now be committed. + This method merely ensures that updates sent during the batch have been committed. It does not ensure that they were not committed before calling this. + + + Gets the list of Behavior associated to this element. This is a bindable propery. + + + + + Identifies the Behaviors bindable property. + + + + Gets the bounds of the element. + The bounds of an element, in device-independent units. + Bounds is assigned during the Layout cycle by a call to . + + + + + Occurs when the Children of a VisualElement have been re-ordered. + + + + Attemps to set focus to this element. + + if the keyboard focus was set to this element; if the call to this method did not force a focus change. + Element must be able to receive focus for this to work. Calling Focus on offscreen or unrealized elements has undefined behavior. + + + Occurs when the element receives focus. + Focused event is raised whenever the VisualElement receives focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + + + The available width that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + The available height that a parent element can allocated to a child. Value will be between 0 and double.PositiveInfinity. + Returns the of the element. Calling this method begins the measure pass of a layout cycle. + A which contains a requested size and a minimum size. + Calling GetSizeRequest causes a measure pass to occur for the subtree of elements it is called on. It is ideal to only call GetSizeRequest when needed as excessive calls can negatively impact the performance of your app. Overriding GetSizeRequest should only be done if you want to ignore Width/HeightRequest. More likely a subclass would wish to override . + + + + Gets the current rendered height of this element. This is a read-only bindable property. + The renderered height of this element. + The height of an element is set during the Layout phase. + + + Identifies the Height bindable property. + + + + Gets or sets the desired height override of this element. + The height this element desires to be. + HeightRequest does not immediately change the Bounds of a VisualElement, however setting the HeightRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the HeightRequest property. + To be added. + + + Gets or sets a value indicating whether this element should be involved in the user interaction cycle. This is a bindable property. + + if the element should be able to receive input; if element should not receive input and should pass inputs to the element below. Default is true. + Setting InputTransparent is not the same as setting IsEnabled to false. Setting InputTransparent only disables inputs and instead causes them to be passed to the VisualElement below the element. Usually this is the parent of the element. + + + + Identifies the InputTransparent bindable property. + + + + Method that is called to invalidate the layout of this . Raises the event. + To be added. + + + Gets or sets a value indicating whether this element is enabled in the user interface. This is a bindable property. + + if the element is enabled; otherwise, . The default value is + + + Elements that are not enabled do not participate in hit detection, and therefore will not receive focus or emit input events. + + + The following example shows a handler on a button which will then set IsEnabled to false on another button. + + + button2.IsEnabled = false; + } + } + ]]> + + + + + Identifies the InputTransparent bindable property. + + + + Gets a value indicating whether this element is focused currently. This is a bindable property. + + if the element is focused; otherwise, . + + + Applications may have multiple focuses depending on the implementation of the underlying toolkit. Menus and modals in particular may leave multiple items with focus. + + + The following example shows conditionally setting a background color based on the focus state. + + + + + + + + Identifies the IsFocused bindable property. + + + + Gets or sets a value that determines whether this elements should be part of the visual tree or not. This is a bindable property. + + if the element should be rendered; otherwise, . Default value is . + + Setting IsVisible to false will remove the element from the visual tree. The element will no longer take up space in layouts or be eligle to receive any kind of input event. + + The following example shows a stack where the middle element is toggled when a button is activated. + + + + + + + + Identifies the IsVisible bindable property. + + + + The new bounds of the element. + Updates the bounds of the element during the layout cycle. + Calling Layout will trigger a layout cycle for the sub-tree of this element. + + + Event that is raised when the layout of a visual element is invalidated. + To be added. + + + Gets or sets a value which overrides the minimum height the element will request during layout. + The minimum height the element requires. Default value is -1. + + + MinimumHeightRequest is used to override the results of a call to by setting the minimum height property. This causes overflow handling to shrink this element to its minimum height before elements who do not have a minimum size set. + + + The following example sets the MinimumHeightRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumHeightRequest property. + To be added. + + + Gets or sets a value which overrides the minimum width the element will request during layout. + The minimum width the element requires. Default value is -1. + + + MinimumWidthRequest is used to override the results of a call to by setting the minimum width property. This causes overflow handling to shrink this element to its minimum width before elements who do not have a minimum size set. + + + The following example sets the MinimumWidthRequest to enable an image to shrink below it's normal size. + + + + + + + + Backing store for the MinimumWidthRequest property. + To be added. + + + Gets the context aware navigation interface for the element. + An that allows for navigation using the ancestral navigation implementor. + + + Use the Navigation property to perform navigation from any element. If the element has not yet been added to a tree which contains a navigation implementor, the actions are queued up until it is. + + + The following example navigates to a new page created in the callback of a buttons event. + + + + + + + Identifies the Navigation bindable property. + + + + Invoked whenever the event is about to be emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. + + + Invoked whenever the Parent of an element is set. Implement this method in order to add behavior when the element is added to a parent. + It is required to call the base implementation. + + + The new width of the element. + The new height of the element. + This method is called when the size of the element is set during a layout cycle. This method is called directly before the event is emitted. Implement this method to add class handling for this event. + This method has no default implementation. You should still call the base implementation in case an intermediate class has implemented this method. Most layouts will want to implement this method in order to layout their children during a layout cycle. + + + The available width for the element to use. + The available height for the element to use. + This method is called during the measure pass of a layout cycle to get the desired size of an element. + A which contains the desired size of the element. + The results of this method will be (-1, -1) if the element has not yet been realized with a platform specific backing control. Overriding this method does not require a call to the base class so long as a valid SizeRequest is returned. + + + Gets or sets the opacity value applied to the element when it is rendered. This is a bindable property. + The opacity value. Default opacity is 1.0. Values will be clamped between 0 and 1 on set. + + + The opacity value has no effect unless IsVisible is . Opacity is inherited down the element hierarchy. If a parent has 0.5 opacity, and a child has 0.5 opacity, the child will render with an effective 0.25 opacity. Setting opacity to 0 has undefined behavior with input elements. + + + The following example sets the opacity of a layout to 0.5 and the opacity of one of its children to 0.5, making the child 25% opaque. + + + + + + + + Identifies the Opacity bindable property. + + + + Gets or sets the local resource dictionary. + The current resource dictionary, where resources are stored by key. + + In XAML, resource dictionaries are filled with key/value pairs that are specified in XML and consequently created at run time. The keys in the resource dictionary are specified with the x:Key attribute of the XML tag for the type to create. An object of that type is created, and is initialized with the property and field values that are specified either by additional attributes or by nested tags, both of which, when present are simply string representations of the property or field names. The object is then inserted into the for the enclosing type at runtime. + + For example, the XAML below, taken from the XAML for Xamarin.Forms series, creates a resource dictionary that contains object constants that can be used for any objects that are added to the surrounding : + + + + + + + +]]> + Note that the above snippet is only valid when nested within a <ContentPage>...</ContentPage> tag pair. Within that pair, the app developer can use both of the horzOptions and vertOptions keys to specify values for properties of type by using the "{...}" static resource syntax. The short example below, also taken from the XAML for Xamarin.Forms series, illustrates this syntax: + ]]> + Resource dictionaries and their associated XML provide the application developer with a convenient method to reuse code inside the XAML compile-time and run-time engines. + + + + + Gets or sets the rotation about the Z-axis (affine rotation) when the element is rendered. + The rotation about the Z-axis in degrees. + Rotation is applied relative to and . + + + Identifies the Rotation bindable property. + + + + Gets or sets the rotation about the X-axis (perspective rotation) when the element is rendered. + The rotation about the X-axis in degrees. + RotationX is applied relative to and . + + + Identifies the RotationX bindable property. + + + + Gets or sets the rotation about the Y-axis (perspective rotation) when the element is rendered. + The rotation about the Y-axis in degrees. + RotationY is applied relative to and . + + + Identifies the RotationY bindable property. + + + + Gets or sets the scale factor applied to the element. + The scale factor of the element. Default value is 1.0. + Scale is applied relative to and . + + + Identifies the Scale bindable property. + + + + The newly allocated width. + The newly allocated height. + SizeAllocated is called during a layout cycle to signal the start of a sub-tree layout. + Calling SizeAllocated will start a new layout cycle on the children of the element. Excessive calls to SizeAllocated may cause performance problems. + + + Occurs when either the Width or the Height properties change value on this element. + Classes should implement if they wish to respond to size change events directly. + + + Gets or sets the style that defines how this visual element is displayed. + To be added. + To be added. + + + Backing store for the Style property. + To be added. + + + Gets or sets the X translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationX bindable property. + + + + Gets or sets the Y translation delta of the element. + The amount to translate the element. + Translation is applied post layout. It is particularly good for applying animations. Translating an element outside the bounds of its parent container may prevent inputs from working. + + + Identifies the TranslationY bindable property. + + + + Gets the list of Trigger associated to this element. This is a bindable property. + + + + + Identifies the Triggers bindable property. + + + + Unsets focus to this element. + Element must already have focus for this to have any effect. + + + Occurs when the element loses focus. + Unfocused event is raised whenever the VisualElement loses focus. This event is not bubbled through the Forms stack and is received directly from the native control. This event is emitted by the IsFocusedProperty setter. + + + Gets the current rendered width of this element. This is a read-only bindable property. + The renderered width of this element. + The width of an element is set during the Layout phase. + + + Identifies the Width bindable property. + + + + Gets or sets the desired width override of this element. + The width this element desires to be. + WidthRequest does not immediately change the Bounds of a VisualElement, however setting the WidthRequest will change the result of calls to GetSizeRequest, which will in turn modify the final size the element receives during a layout cycle. + + + Backing store for the WidthRequest property. + To be added. + + + Gets the current X position of this element. This is a read-only bindable property. + The X position of this element relative to its parents bounds. + The x value of an element is set during the Layout phase. + + + Invalidates the measure when the native size of the element changes. + To be added. + + + Identifies the X bindable property. + + + + Gets the current Y position of this element. This is a read-only bindable property. + The Y position of this element relative to its parents bounds. + The y value of an element is set during the Layout phase. + + + Identifies the Y bindable property. + + + + Class that contains arguments for the event that is raised after web navigation completes. + To be added. + + + To be added. + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets a value that describes the result of the navigation. + To be added. + To be added. + + + Class that contains arguments for the event that is raised after web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets or sets a value that indicates whether or not to cancel the navigation. + To be added. + To be added. + + + Contains values that indicate why a navigation event was raised. + To be added. + + + Indicates that the navigation resulted from the user going back to a previous page in the navigation history. + + + Indicates that the navigation resulted from the user going forward to a later page in the navigation history. + + + Indicates that the navigation was to a preiously unvisited page, according to the navigation history. + + + Indicates that the navigation resulted from a page refresh. + + + TClass that contains arguments for the event that is when web navigation begins. + To be added. + + + To be added. + To be added. + To be added. + Initializes a new instance. + To be added. + + + Gets the navigation event that was raised. + To be added. + To be added. + + + Gets the element that performed the navigation. + To be added. + To be added. + + + The destination of the navigation. + To be added. + To be added. + + + Enumerates values that indicate the outcome of a web navigation. + To be added. + + + The navigation was cancelled. + + + The navigation failed. + + + The navigation succeeded. + + + The navigation timed out. + + + A that presents HTML content. + + The following example shows a basic use. + + + + + + + + + + Creates a new element with default values. + To be added. + + + Gets a value that indicates whether the user can navigate to previous pages. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Gets a value that indicates whether the user can navigate forward. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + A script to evaluate. + Evaluates the script that is specified by . + To be added. + + + Navigates to the previous page. + To be added. + + + Navigates to the next page in the list of visited pages. + To be added. + + + Event that is raised after navigation completes. + To be added. + + + Event that is raised when navigation starts. + To be added. + + + To be added. + Method that is called when is changed. + To be added. + + + To be added. + To be added. + Method that is called when the view source that is specified by the parameter is changed. + To be added. + + + Gets or sets the object that represents the location that this object displays. + To be added. + To be added. + + + Backing store for the property. + To be added. + + + Abstract class whose subclasses provide the data for a . + To be added. + + + Creates a new object with default values. + To be added. + + + Method that is called when the source is changed. + To be added. + + + To be added. + Casts a string that contains a URL to a instance. + To be added. + To be added. + + + To be added. + Casts a object to a instance. + To be added. + To be added. + + + A that converts a string to a . + To be added. + + + Creates a new with default values. + To be added. + + + To be added. + Returns a Boolean value that indicates whether this can convert the to a instance. + To be added. + To be added. + + + To be added. + To be added. + Converts into a by using the specified . + To be added. + To be added. + + + Defines the interface for Xamarin.Forms XAML markup extensions. + + + Types implementing this interface can be used as custom XAML markup extension. + + + The following example shows declaration of a custom markup extension. + + + The markup extension can be used directly in XAML + + + + + To be added. + Returns the object created from the markup extension. + The object + + + + Interface that defines a target and property to which a value is provided. + To be added. + + + Gets the target object. + To be added. + To be added. + + + Gets an object that identifies the target property. + To be added. + To be added. + + + Interface that defines the ability to return a root object, for instance, the top-level in a layout. + To be added. + + + The root object. + To be added. + To be added. + + + Interface defining the ability to resolve a qualified type name into a Type. + To be added. + + + To be added. + Returns the resolved type. + To be added. + To be added. + + + To be added. + To be added. + Tries to resolve a type name, putting the type value in , and returns a Boolean value that indicates whether the operation succeeded. + To be added. + To be added. + + + Exception that is thrown when the XAML parser encounters an error. + To be added. + + + Information about the condition that caused the exception to be thrown. + To be added. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Xaml.dll b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Xaml.dll new file mode 100644 index 0000000..6d49db3 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Xaml.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Xaml.xml b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Xaml.xml new file mode 100644 index 0000000..3a50b08 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Forms.1.3.5.6335/lib/portable-win+net45+wp80+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Xamarin.Forms.Xaml.xml @@ -0,0 +1,137 @@ + + + Xamarin.Forms.Xaml + + + + Markup extension for parsing arrays. + To be added. + + + Creates a new with default values. + To be added. + + + Returns a list of the items in this . + To be added. + To be added. + + + To be added. + Returns an array that contains items of the type that is specified by the property. + To be added. + To be added. + + + Gets or sets the type of the items that can be stored in the array. + To be added. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + + + Internal. + To be added. + To be added. + + + To be added. + Internal. + To be added. + To be added. + + + Extension class for defining method. + To be added. + + + To be added. + To be added. + To be added. + Configures with the properties that are defined in the application manifest for . + To be added. + To be added. + + + Extension class that differentiates between null values and empty strings. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns the null object. + To be added. + To be added. + + + Markup extension for referring to other XAML-defined types. + To be added. + + + Creates a new with default values. + To be added. + + + Gets or sets the name of the entity to reference. + To be added. + To be added. + + + To be added. + Returns an object that represents the type that was referred to. + To be added. + To be added. + + + A markup extension that gets a static member value. + To be added. + + + Creates a new object with default values. + To be added. + + + Gets or sets the member name. + To be added. + To be added. + + + To be added. + Returns the value of the member. + To be added. + To be added. + + + A markup extension for parsing type descriptors. + To be added. + + + Creates a new object with default values. + To be added. + + + To be added. + Returns an object that represents the type specified by the markup. + To be added. + To be added. + + + Gets or sets the name of the type. + To be added. + To be added. + + + Exception that is raised when the XAML parser encounters a XAML error. + To be added. + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/Xamarin.Insights.1.10.6.nupkg b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/Xamarin.Insights.1.10.6.nupkg new file mode 100644 index 0000000..f799f8b Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/Xamarin.Insights.1.10.6.nupkg differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoAndroid10/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoAndroid10/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoAndroid10/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoAndroid10/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoAndroid10/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoAndroid10/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoTouch10/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoTouch10/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoTouch10/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoTouch10/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoTouch10/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/MonoTouch10/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/WP80/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/WP80/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/WP80/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/WP80/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/WP80/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/WP80/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.Mac20/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.Mac20/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.Mac20/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.Mac20/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.Mac20/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.Mac20/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.iOS10/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.iOS10/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.iOS10/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.iOS10/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.iOS10/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/Xamarin.iOS10/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net40/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net40/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net40/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net40/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net40/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net40/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/windows8/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/windows8/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/windows8/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/windows8/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/windows8/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/windows8/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/wpa/Xamarin.Insights.Build.Task.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/wpa/Xamarin.Insights.Build.Task.dll new file mode 100644 index 0000000..e237165 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/wpa/Xamarin.Insights.Build.Task.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/wpa/Xamarin.Insights.targets b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/wpa/Xamarin.Insights.targets new file mode 100644 index 0000000..bbfd413 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/build/wpa/Xamarin.Insights.targets @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoAndroid10/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoAndroid10/Xamarin.Insights.XML new file mode 100644 index 0000000..ae0f8e8 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoAndroid10/Xamarin.Insights.XML @@ -0,0 +1,372 @@ + + + + Xamarin.Insights + + + + + Sends a ping request to the web api, we expect an X-Pong header back, if we don't get taht or the request fails assume no communication with the web api will work + + + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/*YourAppName*/settings + Your apps android context, usually passing in your AppContext will work well enough, but this depends on your application design. + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoAndroid10/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoAndroid10/Xamarin.Insights.dll new file mode 100644 index 0000000..09ef1c3 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoAndroid10/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/PLCrashReporter.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/PLCrashReporter.dll new file mode 100644 index 0000000..c519337 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/PLCrashReporter.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/Xamarin.Insights.XML new file mode 100644 index 0000000..fbd05be --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/Xamarin.Insights.XML @@ -0,0 +1,371 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + + Sends a ping request to the web api, we expect an X-Pong header back, if we don't get taht or the request fails assume no communication with the web api will work + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/Xamarin.Insights.dll new file mode 100644 index 0000000..6cceb49 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/MonoTouch10/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/WP80/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/WP80/Xamarin.Insights.XML new file mode 100644 index 0000000..6348bc7 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/WP80/Xamarin.Insights.XML @@ -0,0 +1,364 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/WP80/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/WP80/Xamarin.Insights.dll new file mode 100644 index 0000000..450d4cf Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/WP80/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.Mac20/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.Mac20/Xamarin.Insights.XML new file mode 100644 index 0000000..fda6310 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.Mac20/Xamarin.Insights.XML @@ -0,0 +1,374 @@ + + + + Xamarin.Insights + + + + + Sends a ping request to the web api, we expect an X-Pong header back, if we don't get taht or the request fails assume no communication with the web api will work + + + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + The current version of your app, this should use Semantic Versioning + An identifier that uniquely identifies your app, a unique string of some kind + An opetional paramater that allows you to specify a unique cache directory for insights to use + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.Mac20/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.Mac20/Xamarin.Insights.dll new file mode 100644 index 0000000..a6f5805 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.Mac20/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/PLCrashReporterUnifiedBinding.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/PLCrashReporterUnifiedBinding.dll new file mode 100644 index 0000000..9ffbbfb Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/PLCrashReporterUnifiedBinding.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/Xamarin.Insights.XML new file mode 100644 index 0000000..fbd05be --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/Xamarin.Insights.XML @@ -0,0 +1,371 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + + Sends a ping request to the web api, we expect an X-Pong header back, if we don't get taht or the request fails assume no communication with the web api will work + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/Xamarin.Insights.dll new file mode 100644 index 0000000..8e1b193 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/Xamarin.iOS10/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net40/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net40/Xamarin.Insights.XML new file mode 100644 index 0000000..e660364 --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net40/Xamarin.Insights.XML @@ -0,0 +1,373 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + The current version of your app, this should use Semantic Versioning + An identifier that uniquely identifies your app, a unique string of some kind + An opetional paramater that allows you to specify a unique cache directory for insights to use + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + Attempts to purge all pending data, this may not actually send all data to the web service if networking is down or insights is unavailable. + + + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net40/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net40/Xamarin.Insights.dll new file mode 100644 index 0000000..087485e Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net40/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.XML new file mode 100644 index 0000000..cbb65de --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.XML @@ -0,0 +1,358 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.dll new file mode 100644 index 0000000..a122f2e Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/portable-win+net45+wp80+windows8+wpa+MonoAndroid10+MonoTouch10/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/windows8/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/windows8/Xamarin.Insights.XML new file mode 100644 index 0000000..fbd05be --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/windows8/Xamarin.Insights.XML @@ -0,0 +1,371 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + + Sends a ping request to the web api, we expect an X-Pong header back, if we don't get taht or the request fails assume no communication with the web api will work + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/windows8/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/windows8/Xamarin.Insights.dll new file mode 100644 index 0000000..5c635d6 Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/windows8/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/wpa/Xamarin.Insights.XML b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/wpa/Xamarin.Insights.XML new file mode 100644 index 0000000..fbd05be --- /dev/null +++ b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/wpa/Xamarin.Insights.XML @@ -0,0 +1,371 @@ + + + + Xamarin.Insights + + + + + Obsolete, use Xamarin.Insights.ReportSeverity instead + + + + + A Warning + + + + + An Error + + + + + Xamarin.Insights + + + + + This method initializes Insights and starts automatic monitoring systems, it is required to be called before any other API + + The APIKey given to you by Insights, which can be found here: https://insights.xamarin.com/app/$YourAppNameGoesHere$/settings + + + + Passing this key into will enable a silent debug mode in Insights. + Insights will not track, catch exceptions or submit information of any kind. + This is useful if you are trying to debug your application and want Insights to get out of the way. + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + A Generic table of information you would like to associate with this user. + + This sample shows how to call the method with a table of data + + var manyInfos = new Dictionary<string, string>{ + {"Email", "njpatel@catfacts.com"}, + {"CatTeethFact", "Cats have 30 teeth (12 incisors, 10 premolars, 4 canines, and 4 molars), while dogs have 42. Kittens have baby teeth, which are replaced by permanent teeth around the age of 7 months."} + } + Insights.Identify("YourUsersUniqueId", manyInfos); + + + + + + Identify is used to identify your users with unique information, this also allows Insights to attach other reports + to this user. + This method is a shorthand version of Identify(string, IDictionary) in that it essentially represents + a table with one value + + + The unique identifier for this user, this can be whatever string you like as long as it is unique for + that user, using DeviceIDs and such is not recommended, those are only unique to devices + + The key representing a key/value storage type. + The value representing a key/value storage type. + + This sample shows how to call the method with a key/value. + + Insights.Identify("YourUsersUniqueId", "Email", "njpatel@catfacts.com"); + + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + + An optional key/value store representing additional data that you would like to attach to this + event + + + + + Track allows you to track usage of your application and add additional data to each event + + A unique name for this event + A trait for this track event, key value form of the Dictionary varient + Value for the given trait, key value form of the Dictionary varient + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifier name for this event + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + TrackTime allows you to track events that make take an amount of time to complete. For example measuring how long + it takes to submit login information to a remote server. + + A unique identifer name for this event + + + a handler object that allows you to start and stop the built in timer. + + This shows how to use this method with a using keyword + + using (var handle = Insights.TrackTime("TimeToLogin")) { + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + } + + If you do not wish to use the using keyword or want to track events in more complex scenarios you can use the Start + and Stop methods on the handle object + + var handle = Insights.TrackTime("TimeToLogin"); + handle.Start(); + await SubmitLoginInformation("myuserid", "mypassword"); + ... more code goes here ... + handle.Stop(); + + + + + + Report allows you to report exceptions to Insights when they are caught, this allows you to track exceptions + without crashing. + + an Exception data type, you can also attach extra data to the .Data paramater of the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + This sample shows how to call the Report method. + + try { + ExceptionThrowingFunction(); + } + catch (Exception exception) { + exception.Data["This is some extra data"] = "A cat's field of vision is about 200 degrees." + Insights.Report(exception); + } + + + + + + An overload of Report, this allows you to specify extra data to be sent with the exception. + + The Exception you want to report + A Dictionary containing key/values that you want to report along with the exception + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + An overload of Report, this allows you to specify a single key/value pair of extra data to be sent with the exception + + The Exception you want to report + A warning level for the given report, can be ReportSeverity.Warning or ReportSeverity.Error + + + + + + Save is intended to be called when your process is being stopped. It informs Insights that the process will no longer be active and lets Insights save its state to disk. + Insights auto detects most cases where this would happen, The intendted use case for this is if you are handling unhandled exceptions yourself, you will need to Insights.Save() after reporting your exceptions. + + Returns a task, it is recommended that you await this task. + + + + Purges any pending crash reports. This is only ever intended to be used when Insights notifies you that there are pending crash reports. + + A Task that should be awaited until it has completed, signifying that the crash reports have been delivered to insights web. + + + + This event is fired when Insights detects a new pending crash report + + + + + This paramater will return true if Initialize has been successfully called + + + + + This paramater allows you to disable certain collection types, they will not be reported to the Insights server. + + + Insights.DisableCollection = true; // Disables Insights automated behaviors + Insights.DisableDataTransmission = true; // Disables data communication with the webapi + Insights.DisableExceptionCatching = true; // Disables automatic unhandled exception catching + + Insights.DisableCollectionTypes = Insights.OSInfo; // Stops Insights from tracking OSInfo + Insights.DisableCollectionTypes = Insights.Jailbroken; // Stops Insights from tracking HardwareInfo + Insights.DisableCollectionTypes = Insights.NetworkInfo; // Stops Insights from tracking NetworkInfo + + //Can be combined + Insights.DisableCollectionTypes = Insights.OSInfo | Insights.NetworkInfo; // Stops Insights from tracking OSInfo and NetworkInfo + + + + + DisableCollection allows you to disable Insights at run time, it will not collect information, it will not submit + information, any information it has collected will be preserved. + Crash reporting is also disabled if this flag is set, use at your own risk. + + + + + DisableDataTransmission allows you to disable any use of data communication by Insights, when this value is set to True + Insights will just gather data and not send any data. + + + + + DisableExceptionCatching disables any automatic unhandled exception handling in Insights. + Use this if you wish to catch exceptions yourself and .Report() them to insights at your leisure + + + + + Setting this property to true will force Insights to submit data to the server regardless of the network state + + + + + A delegate for the HasPendingCrashReportEventHandler event, you are expected to call Insights.PurgePendingCrashReports() in this method + if you wish for Insights to synchronously send a crash report on startup, otherwise ignore this and insights will send the crash report + in the background. + + + + + + + + + + + + URL corresponding to the location of the users avatar + + + + + Use Date.ToString('o'); to encode the users date of birth + + + + + Use Date.ToString('o'); to encode the date the user created the account + + + + + Describes the Severity of a Report + + + + + Warning Severity + + + + + Error Severity, you are not expected to call this from client side code unless you have disabled unhandled exception handling. + + + + + Critical Severity + + + + + Interface for TrackHandles, this not expected to be implimented by client side code + + + + + Starts the TrackTime handle + + + + + Stops the TrackTime handle + + + + + the key value traits list associated with this TrackTime event + + + + + Reads the journal from disk and updates our journal with the given data. + this is completely destructive + + + + + + One big state machine for network availability, with allowances for overrides. + It is expected to have its NetworkState set by platform specific codebases signalling changes in their network state. + + + + + Basically every platform has a different idea of network states and trying to represent the specifics of each one is a pita. + so lets just be fuzzy and use abstract concepts, trying to match the platform specific concepts to them as best we can + + + + + Submits an exception to our api server, this runs through the crash api + + + + + + + + + Submits an exception to our api server, this runs through the crash api, + in addition this will save the current state of the journal to disk + this entire method will block. It is intended to be used when in an unhandled event handler + + + + + + + + Sends a ping request to the web api, we expect an X-Pong header back, if we don't get taht or the request fails assume no communication with the web api will work + + + + + + diff --git a/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/wpa/Xamarin.Insights.dll b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/wpa/Xamarin.Insights.dll new file mode 100644 index 0000000..399e5ed Binary files /dev/null and b/LiveXAMLApp/packages/Xamarin.Insights.1.10.6/lib/wpa/Xamarin.Insights.dll differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/ModernHttpClient-2.4.1.zip b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/ModernHttpClient-2.4.1.zip new file mode 100644 index 0000000..ed863e1 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/ModernHttpClient-2.4.1.zip differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/ModernHttpClient.dll b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/ModernHttpClient.dll new file mode 100644 index 0000000..f0dbb25 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/ModernHttpClient.dll differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/ModernHttpClient.dll.mdb b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/ModernHttpClient.dll.mdb new file mode 100644 index 0000000..0775e31 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/ModernHttpClient.dll.mdb differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/OkHttp.dll b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/OkHttp.dll new file mode 100644 index 0000000..caf00ba Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoAndroid/OkHttp.dll differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoTouch/ModernHttpClient.dll b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoTouch/ModernHttpClient.dll new file mode 100644 index 0000000..5e4ad12 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoTouch/ModernHttpClient.dll differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoTouch/ModernHttpClient.dll.mdb b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoTouch/ModernHttpClient.dll.mdb new file mode 100644 index 0000000..032b887 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/MonoTouch/ModernHttpClient.dll.mdb differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Portable-Net45+WinRT45+WP8+WPA81/ModernHttpClient.dll b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Portable-Net45+WinRT45+WP8+WPA81/ModernHttpClient.dll new file mode 100644 index 0000000..e6d3bcb Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Portable-Net45+WinRT45+WP8+WPA81/ModernHttpClient.dll differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Portable-Net45+WinRT45+WP8+WPA81/ModernHttpClient.dll.mdb b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Portable-Net45+WinRT45+WP8+WPA81/ModernHttpClient.dll.mdb new file mode 100644 index 0000000..bfe9b31 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Portable-Net45+WinRT45+WP8+WPA81/ModernHttpClient.dll.mdb differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Xamarin.iOS10/ModernHttpClient.dll b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Xamarin.iOS10/ModernHttpClient.dll new file mode 100644 index 0000000..14d65e4 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Xamarin.iOS10/ModernHttpClient.dll differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Xamarin.iOS10/ModernHttpClient.dll.mdb b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Xamarin.iOS10/ModernHttpClient.dll.mdb new file mode 100644 index 0000000..306edb3 Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/Xamarin.iOS10/ModernHttpClient.dll.mdb differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/modernhttpclient.2.4.1.nupkg b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/modernhttpclient.2.4.1.nupkg new file mode 100644 index 0000000..51412bd Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/lib/modernhttpclient.2.4.1.nupkg differ diff --git a/LiveXAMLApp/packages/modernhttpclient.2.4.2/modernhttpclient.2.4.2.nupkg b/LiveXAMLApp/packages/modernhttpclient.2.4.2/modernhttpclient.2.4.2.nupkg new file mode 100644 index 0000000..d444fdf Binary files /dev/null and b/LiveXAMLApp/packages/modernhttpclient.2.4.2/modernhttpclient.2.4.2.nupkg differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.dll.mdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.dll.mdb new file mode 100644 index 0000000..18cc098 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.dll.mdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.pdb new file mode 100644 index 0000000..1684e92 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.dll new file mode 100644 index 0000000..c0a704b Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.dll.mdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.dll.mdb new file mode 100644 index 0000000..61a33f9 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.dll.mdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.pdb new file mode 100644 index 0000000..45e6197 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.xml new file mode 100644 index 0000000..54229bf --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoAndroid10/Sockets.Plugin.xml @@ -0,0 +1,417 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native NetworkInterface this CommsInterface represents. + + + + + The Native IpAddress this CommsInterface represents. + + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for .NET UDP socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a UDP datagram has been received. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Default constructor for UdpSocketClient. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Allows a Java.Util.IEnumeration to be enumerated as an IEnumerable. + + + + + + + + Calculates the subnet address for an ip address given its prefix link. + Returns the ip as a string in dotted quad notation. + + + + + + + + Converts an array of bools to an array of bytes, 8 bits per byte. + Expects most significant bit first. + + + + + + + Converts dotted quad representation of an ip address into a byte array. + + + + + + + Converts a byte array into dotted quad representation. + + + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.dll new file mode 100644 index 0000000..2d75159 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.xml new file mode 100644 index 0000000..23171f6 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoMac/Sockets.Plugin.xml @@ -0,0 +1,313 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + The interface identifier provided by the underlying platform. + + + + The interface name, as provided by the underlying platform. + + + + The IPv4 Address of the interface, if connected. + + + + The IPv4 address of the gateway, if available. + + + + The IPv4 broadcast address for the interface, if available. + + + + The connection status of the interface, if available + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + Indicates whether the interface is the loopback interface + + + + The native NetworkInterface this CommsInterface represents. + + + + The Native IpAddress this CommsInterface represents. + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + Default constructor for TcpSocketClient. + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + A stream that can be used for receiving data from the remote endpoint. + + + + A stream that can be used for sending data to the remote endpoint. + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + The port to which the TcpSocketListener is currently bound + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Base class for .NET UDP socket wrapper. + + + + Native socket field around which UdpSocketBase wraps. + + + + Fired when a UDP datagram has been received. + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + Default constructor for UdpSocketClient. + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.dll new file mode 100644 index 0000000..e8eecf9 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.xml new file mode 100644 index 0000000..c1e7bc8 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/MonoTouch10/Sockets.Plugin.xml @@ -0,0 +1,373 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native NetworkInterface this CommsInterface represents. + + + + + The Native IpAddress this CommsInterface represents. + + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for .NET UDP socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a UDP datagram has been received. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Default constructor for UdpSocketClient. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.dll new file mode 100644 index 0000000..aabfac4 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.xml new file mode 100644 index 0000000..23171f6 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac.Classic/Sockets.Plugin.xml @@ -0,0 +1,313 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + The interface identifier provided by the underlying platform. + + + + The interface name, as provided by the underlying platform. + + + + The IPv4 Address of the interface, if connected. + + + + The IPv4 address of the gateway, if available. + + + + The IPv4 broadcast address for the interface, if available. + + + + The connection status of the interface, if available + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + Indicates whether the interface is the loopback interface + + + + The native NetworkInterface this CommsInterface represents. + + + + The Native IpAddress this CommsInterface represents. + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + Default constructor for TcpSocketClient. + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + A stream that can be used for receiving data from the remote endpoint. + + + + A stream that can be used for sending data to the remote endpoint. + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + The port to which the TcpSocketListener is currently bound + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Base class for .NET UDP socket wrapper. + + + + Native socket field around which UdpSocketBase wraps. + + + + Fired when a UDP datagram has been received. + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + Default constructor for UdpSocketClient. + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.dll new file mode 100644 index 0000000..88360d9 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.xml new file mode 100644 index 0000000..23171f6 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.Mac/Sockets.Plugin.xml @@ -0,0 +1,313 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + The interface identifier provided by the underlying platform. + + + + The interface name, as provided by the underlying platform. + + + + The IPv4 Address of the interface, if connected. + + + + The IPv4 address of the gateway, if available. + + + + The IPv4 broadcast address for the interface, if available. + + + + The connection status of the interface, if available + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + Indicates whether the interface is the loopback interface + + + + The native NetworkInterface this CommsInterface represents. + + + + The Native IpAddress this CommsInterface represents. + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + Default constructor for TcpSocketClient. + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + A stream that can be used for receiving data from the remote endpoint. + + + + A stream that can be used for sending data to the remote endpoint. + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + The port to which the TcpSocketListener is currently bound + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Base class for .NET UDP socket wrapper. + + + + Native socket field around which UdpSocketBase wraps. + + + + Fired when a UDP datagram has been received. + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + Default constructor for UdpSocketClient. + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.dll new file mode 100644 index 0000000..a12b3bd Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.xml new file mode 100644 index 0000000..c1e7bc8 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/Xamarin.iOS10/Sockets.Plugin.xml @@ -0,0 +1,373 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native NetworkInterface this CommsInterface represents. + + + + + The Native IpAddress this CommsInterface represents. + + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for .NET UDP socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a UDP datagram has been received. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Default constructor for UdpSocketClient. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.pdb new file mode 100644 index 0000000..1684e92 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.dll new file mode 100644 index 0000000..51b8b79 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.pdb new file mode 100644 index 0000000..d73a95e Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.xml new file mode 100644 index 0000000..c1e7bc8 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/net45/Sockets.Plugin.xml @@ -0,0 +1,373 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native NetworkInterface this CommsInterface represents. + + + + + The Native IpAddress this CommsInterface represents. + + + + + Returns an IPEndpoint object that can be used to bind the network interface to specified port. + + + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + UnicastIPAddressInformation.IPv4Mask is not implemented in Xamarin. This method sits in a partial class definition + on each native platform and retrieves the netmask in whatever way it can be done for each platform. + + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Returns a CommsInterface wrapper from a platform native NetworkInterface. + + + + + + + Converts an OperationalStatus value to the abstracted CommsInterfaceStatus. + + + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for .NET UDP socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a UDP datagram has been received. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Default constructor for UdpSocketClient. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketServer to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketServer. Should not be called if the UdpSocketServer has not yet + been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.pdb new file mode 100644 index 0000000..1684e92 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.dll new file mode 100644 index 0000000..ebc2de7 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.pdb new file mode 100644 index 0000000..797227c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.xml new file mode 100644 index 0000000..470b5bd --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10/Sockets.Plugin.xml @@ -0,0 +1,291 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Default constructor for TcpSocketListener. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream to any connected sockets. + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Base class for UDP socket implementations + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Sends udp data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a udp datagram has been received. + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.pdb new file mode 100644 index 0000000..1684e92 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.dll new file mode 100644 index 0000000..ae85316 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.pdb new file mode 100644 index 0000000..1a09ca2 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.xml new file mode 100644 index 0000000..6589f07 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/win8/Sockets.Plugin.xml @@ -0,0 +1,365 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native HostName this CommsInterface represents. + + + + + The native NetworkAdapter this CommsInterface represents. + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + 5 + + + + The connection status of the interface, if available + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Calculates the subnet address for an ip address given its prefix link. + Returns the ip as a string in dotted quad notation. + + + + + + + + Converts an array of bools to an array of bytes, 8 bits per byte. + Expects most significant bit first. + + + + + + + Converts dotted quad representation of an ip address into a byte array. + + + + + + + Converts a byte array into dotted quad representation. + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new tcp connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for WinRT udp socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Default constructor for UdpSocketBase + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a udp datagram has been received. + + + + + Sends udp data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.pdb new file mode 100644 index 0000000..1684e92 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.dll new file mode 100644 index 0000000..7bb8818 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.pdb new file mode 100644 index 0000000..c4b5105 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.xml new file mode 100644 index 0000000..6589f07 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wp8/Sockets.Plugin.xml @@ -0,0 +1,365 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native HostName this CommsInterface represents. + + + + + The native NetworkAdapter this CommsInterface represents. + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + 5 + + + + The connection status of the interface, if available + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Calculates the subnet address for an ip address given its prefix link. + Returns the ip as a string in dotted quad notation. + + + + + + + + Converts an array of bools to an array of bytes, 8 bits per byte. + Expects most significant bit first. + + + + + + + Converts dotted quad representation of an ip address into a byte array. + + + + + + + Converts a byte array into dotted quad representation. + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new tcp connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for WinRT udp socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Default constructor for UdpSocketBase + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a udp datagram has been received. + + + + + Sends udp data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.dll new file mode 100644 index 0000000..bbdc46c Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.pdb new file mode 100644 index 0000000..1684e92 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.xml new file mode 100644 index 0000000..f10f83f --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.Abstractions.xml @@ -0,0 +1,320 @@ + + + + Sockets.Plugin.Abstractions + + + + + Wraps and into + a single . This is primarily intended for migrations from existing code + that uses . + + + The instance of + + + A single stream that wraps and + . + + + + + Provides a summary of an available network interface on the device. + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + The connection status of the interface, if available + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + + + + + Sends and recieves data in a udp multicast group. + Join a udp multicast address using JoinMulticastGroupAsync, then send data using + SendMulticastAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to multicast on. If unspecified, all interfaces will be bound. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Fired when a udp datagram has been received. + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + Is this socket secure? + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new TCP connections. + This does not disconnect existing connections. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + Sends UDP data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Fired when a UDP datagram has been received. + + + + + The connection state of an interface. + + + + + The state of the interface can not be determined. + + + + + The interface is connected. + + + + + The interface is disconnected. + + + + + Fired when a TcpSocketListener receives a new connection. + + + + + Constructor for TcpSocketListenerConnectEventArgs. + + A TcpSocketClient representing the newly connected client. + + + + A TcpSocketClient representing the newly connected client. + + + + + Fires when a udp listener or udp multicast client receives a udp datagram. + + + + + Constructor for the UdpSocketMessageReceivedEventArgs. + + Remote address of the received datagram. + Remote port of the received datagram. + Datagram contents. + + + + Remote address of the received datagram. + + + + + Remote port of the received datagram. + + + + + Datagram contents. + + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.dll b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.dll new file mode 100644 index 0000000..2de8eb0 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.dll differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.pdb b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.pdb new file mode 100644 index 0000000..861bb1f Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.pdb differ diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.xml b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.xml new file mode 100644 index 0000000..6589f07 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/lib/wpa81/Sockets.Plugin.xml @@ -0,0 +1,365 @@ + + + + Sockets.Plugin + + + + + Provides a summary of an available network interface on the device. + + + + + The native HostName this CommsInterface represents. + + + + + The native NetworkAdapter this CommsInterface represents. + + + + + Retrieves information on the IPv4 network interfaces available. + + + + + + The interface identifier provided by the underlying platform. + + + + + The interface name, as provided by the underlying platform. + + + + + The IPv4 Address of the interface, if connected. + + + + + The IPv4 address of the gateway, if available. + + + + + The IPv4 broadcast address for the interface, if available. + + + + + Indicates whether the interface has a network address and can be used for + sending/receiving data. + + + + + Indicates whether the interface is the loopback interface + 5 + + + + The connection status of the interface, if available + + + + + Helper methods required for the conversion of platform-specific network items to the abstracted versions. + + + + + Determines the broadcast address for a given IPAddress + Adapted from http://blogs.msdn.com/b/knom/archive/2008/12/31/ip-address-calculations-with-c-subnetmasks-networks.aspx + + + + + + + + Calculates the subnet address for an ip address given its prefix link. + Returns the ip as a string in dotted quad notation. + + + + + + + + Converts an array of bools to an array of bytes, 8 bits per byte. + Expects most significant bit first. + + + + + + + Converts dotted quad representation of an ip address into a byte array. + + + + + + + Converts a byte array into dotted quad representation. + + + + + + + Sends and receives data over a TCP socket. Establish a connection with a listening TCP socket using + ConnectAsync. + Use the WriteStream and ReadStream properties for sending and receiving data + respectively. + + + + + Default constructor for TcpSocketClient. + + + + + Initializes a new instance of the class. + + Size of the buffer for the write stream. + + + + Establishes a TCP connection with the endpoint at the specified address/port pair. + + The address of the endpoint to connect to. + The port of the endpoint to connect to. + True to enable TLS on the socket. + + + + Disconnects from an endpoint previously connected to using ConnectAsync. + Should not be called on a TcpSocketClient that is not already connected. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + A stream that can be used for receiving data from the remote endpoint. + + + + + A stream that can be used for sending data to the remote endpoint. + + + + + The address of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + The port of the remote endpoint to which the TcpSocketClient is currently connected. + + + + + Binds to a port and listens for TCP connections. + Use StartListeningAsync to bind to a local port, then handle ConnectionReceived events as + clients connect. + + + + + Binds the TcpSocketListener to the specified port on all endpoints and listens for TCP connections. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Stops the TcpSocketListener from listening for new tcp connections. + This does not disconnect existing connections. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a new TCP connection has been received. + Use the SocketClient property of the TcpSocketListenerConnectEventArgs + to get a TcpSocketClient representing the connection for sending and receiving data. + + + + + The port to which the TcpSocketListener is currently bound + + + + + Base class for WinRT udp socket wrapper. + + + + + Native socket field around which UdpSocketBase wraps. + + + + + Default constructor for UdpSocketBase + + + + + Sends the specified data to the 'default' target of the underlying DatagramSocket. + There may be no 'default' target. depending on the state of the object. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. + + + + + Fired when a udp datagram has been received. + + + + + Sends udp data to arbitrary endpoints. + If data is to be sent to a single endpoint only, use ConnectAsync to specify a default endpoint to + which data will be sent, + and send data with SendAsync. + + + + + Sets the endpoint at the specified address/port pair as the 'default' target of sent data. + After calling ConnectAsync, use SendAsync to send data to the default target. + + The remote address for the default target. + The remote port for the default target. + + + + Unsets the 'default' target of sent data. + After calling DisconnectAsync, calls to SendAsync will have no effect. + + + + + Sends the specified data to the 'default' target of the UdpSocketClient, previously set using + ConnectAsync. + If the 'default' target has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + + Sends and recieves data in a UDP multicast group. + Join a UDP multicast address using JoinMulticastGroupAsync, then send data using + SendAsync. + + + + + Joins the multicast group at the specified endpoint. + + The address for the multicast group. + The port for the multicast group. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Sends the specified data to the multicast group, previously set using JoinMulticastGroupAsync. + If a group has not been set, calls will have no effect. + + A byte array of data to be sent. + + + + Removes the UdpSocketMulticastClient from a joined multicast group. + + + + + Gets or sets the Time To Live value for the UdpSocketMulticastClient. + Must be called before joining a multicast group. + + + + + Listens on a port for UDP traffic and can send UDP data to arbitrary endpoints. + + + + + Binds the UdpSocketReceiver to the specified port on all endpoints and listens for UDP traffic. + + The port to listen on. If '0', selection is delegated to the operating system. + The CommsInterface to listen on. If unspecified, all interfaces will be bound. + + + + + Unbinds a bound UdpSocketReceiver. Should not be called if the UdpSocketReceiver has not + yet been unbound. + + + + + Sends the specified data to the endpoint at the specified address/port pair. + + A byte array of data to send. + The remote address to which the data should be sent. + The remote port to which the data should be sent. + + + diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/FileOrder.txt b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/FileOrder.txt new file mode 100644 index 0000000..4fe4418 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/FileOrder.txt @@ -0,0 +1,6 @@ +TcpSocketListener.linq +TcpSocketClient.linq +Transmitting strings.linq +Transmitting complex objects.linq +Strings.linq +Objects.linq \ No newline at end of file diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/Objects.linq b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/Objects.linq new file mode 100644 index 0000000..852b6c3 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/Objects.linq @@ -0,0 +1,166 @@ + + Newtonsoft.Json + rda.SocketsForPCL + Sockets.Plugin + Sockets.Plugin.Abstractions + System.Threading.Tasks + Newtonsoft.Json + + +// demonstrates a basic object transmission protocol, using json serialization + +const int tcpPort = 50000; + +async Task Main() +{ + await DoListener(); + await DoClient(); +} + +public Task DoListener() +{ + var listener = new TcpSocketListener(); + + listener.ConnectionReceived += async (sender, args) => + { + "".Dump("Client connected"); + var client = args.SocketClient; + + // we're expecting a myfirstobject, then a mysecondobject + await client.ReceiveObject().Dump("MyFirstObject"); + await client.ReceiveObject().Dump("MySecondObject"); + + "".Dump("Client disconnected"); + + await listener.StopListeningAsync(); + }; + + return listener.StartListeningAsync(tcpPort); +} + +public async Task DoClient() +{ + var client = new TcpSocketClient(); + await client.ConnectAsync("localhost", tcpPort); + + await Task.Delay(1000); + + // first we send a MyFirstObject + var myFirst = MyFirstObject.GetSampleObject(); + await client.SendObject(myFirst); + + // then we wait a bit + await Task.Delay(1000); + + // then we send a MySecondObject + var mySecond = MySecondObject.GetSampleObject(myFirst); + await client.SendObject(mySecond); + + await client.DisconnectAsync(); +} + +// Implements a basic object reading/writing protocol +// it's just like the string writing one, +// with a json serialization step first +// bytes 1 - sizeof(int32) : message length +// subsequent bytes : message +// to handle objects that serialize to +// longer than int32.maxvalue we'd need to chunk +// +// for a version that doesn't require you to know the type upfront, +// see https://github.com/rdavisau/sockethelpers-for-pcl/blob/master/SocketHelpers/SocketHelpers/Messaging/JsonProtocolMessenger.cs +public static class StringHelpers +{ + public static async Task ReceiveObject(this ITcpSocketClient c) + { + // get the length of the next message + var sizeOfInt = sizeof(Int32); + var sizeBuf = new byte[sizeOfInt]; + + await c.ReadStream + .ReadAsync(sizeBuf, 0, sizeOfInt) + .ConfigureAwait(false); + + // convert to int + var msgLength = BitConverter.ToInt32(sizeBuf, 0); + + // get the actual message + var msgBuf = new byte[msgLength]; + await c.ReadStream + .ReadAsync(msgBuf, 0, msgLength) + .ConfigureAwait(false); + + // convert to obj + var json = Encoding.UTF8.GetString(msgBuf, 0, msgLength); + var obj = JsonConvert.DeserializeObject(json); + + return obj; + } + + public static Task SendObject(this ITcpSocketClient c, T obj) + { + var json = JsonConvert.SerializeObject(obj); + + // convert to utf8 bytes + var msgBytes = Encoding.UTF8.GetBytes(json); + var msgLength = msgBytes.Length; + var msgLengthBytes = BitConverter.GetBytes(msgLength); + + // prepare the bytes to send + var allBytes = Enumerable.Concat(msgLengthBytes, msgBytes).ToArray(); + + // send + return c.WriteStream.WriteAsync(allBytes, 0, allBytes.Length); + } +} + +public class MyFirstObject +{ + public string Name { get; set; } + public int FavNumber { get; set; } + public DateTime DOB { get; set; } + + public static MyFirstObject GetSampleObject() + { + return new MyFirstObject + { + Name = "Barry", + FavNumber = 21, + DOB = DateTime.Now.AddYears(-30) + }; + } +} + +public class MySecondObject +{ + public string SubjectName { get; set; } + public List Students { get; set; } + public List Classes { get; set; } + public MyFirstObject MyFirstObject { get; set; } + + public MySecondObject() + { + Students = new List(); + Classes = new List(); + } + + public static MySecondObject GetSampleObject(MyFirstObject myFirstObject) + { + return new MySecondObject + { + SubjectName = "Biology", + Students = + { + "Alice", + "Bob", + "Delta force" + }, + Classes = + { + DateTime.Now.AddDays(5), + DateTime.Now.AddDays(7) + }, + MyFirstObject = myFirstObject + }; + } +} diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/Strings.linq b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/Strings.linq new file mode 100644 index 0000000..01bfc6d --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/Strings.linq @@ -0,0 +1,101 @@ + + rda.SocketsForPCL + Sockets.Plugin + Sockets.Plugin.Abstractions + System.Threading.Tasks + + +// demonstrates a basic string transmission protocol + +const int tcpPort = 50000; +const string eof = ""; + +async Task Main() +{ + await DoListener(); + await DoClient(); +} + +public Task DoListener() +{ + var listener = new TcpSocketListener(); + + listener.ConnectionReceived += async (sender, args) => + { + "".Dump("Client connected"); + + var msg = ""; + while (msg != eof) + { + msg = await args.SocketClient.ReceiveString().Dump(); + } + + "".Dump("Client disconnected"); + + await listener.StopListeningAsync(); + }; + + return listener.StartListeningAsync(tcpPort); +} + +public async Task DoClient() +{ + var client = new TcpSocketClient(); + await client.ConnectAsync("localhost", tcpPort); + + foreach (var s in "Look how easily I can send strings!".Split(' ')) + { + await client.SendString(s); + await Task.Delay(250); + } + + await client.SendString(eof); + await client.DisconnectAsync(); +} + +// Implements a basic string reading/writing protocol +// bytes 1 - sizeof(int32) : message length +// subsequent bytes : message +// to handle messages longer than int32.maxvalue +// we'd need to chunk +public static class StringHelpers +{ + public static async Task ReceiveString(this ITcpSocketClient c) + { + // get the length of the next message + var sizeOfInt = sizeof(Int32); + var sizeBuf = new byte[sizeOfInt]; + + await c.ReadStream + .ReadAsync(sizeBuf, 0, sizeOfInt) + .ConfigureAwait(false); + + // convert to int + var msgLength = BitConverter.ToInt32(sizeBuf, 0); + + // get the actual message + var msgBuf = new byte[msgLength]; + await c.ReadStream + .ReadAsync(msgBuf, 0, msgLength) + .ConfigureAwait(false); + + // convert to string + var msg = Encoding.UTF8.GetString(msgBuf, 0, msgLength); + + return msg; + } + + public static Task SendString(this ITcpSocketClient c, string s) + { + // convert to utf8 bytes + var msgBytes = Encoding.UTF8.GetBytes(s); + var msgLength = msgBytes.Length; + var msgLengthBytes = BitConverter.GetBytes(msgLength); + + // prepare the bytes to send + var allBytes = Enumerable.Concat(msgLengthBytes, msgBytes).ToArray(); + + // send + return c.WriteStream.WriteAsync(allBytes, 0, allBytes.Length); + } +} diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/TcpSocketClient.linq b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/TcpSocketClient.linq new file mode 100644 index 0000000..90e91bb --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/TcpSocketClient.linq @@ -0,0 +1,27 @@ + + rda.SocketsForPCL + Sockets.Plugin + Sockets.Plugin.Abstractions + System.Threading.Tasks + + +// basic TcpSocketClient +// first start listening with the TcpSocketListener query, then connect with this one + +const int tcpPort = 50000; + +async Task Main() +{ + var client = new TcpSocketClient(); + await client.ConnectAsync("localhost", tcpPort); + + for (var i = 0; i < 5; i++) + { + await client.WriteStream.WriteAsync(new [] { (byte) i }, 0, 1); + await client.WriteStream.FlushAsync(); + } + + await client.DisconnectAsync(); +} + +// Define other methods and classes here \ No newline at end of file diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/TcpSocketListener.linq b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/TcpSocketListener.linq new file mode 100644 index 0000000..b773b29 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Tcp/TcpSocketListener.linq @@ -0,0 +1,38 @@ + + rda.SocketsForPCL + Sockets.Plugin + Sockets.Plugin.Abstractions + System.Threading.Tasks + + +// basic TcpSocketListener +// start listening with this query, then open the TcpSocketClient query and have it connect + +const int tcpPort = 50000; + +async Task Main() +{ + var listener = new TcpSocketListener(); + + listener.ConnectionReceived += async (sender, args) => + { + "Client connected :)".Dump(); + + int bytesRead = -1; + byte[] buf = new byte[1]; + + while (bytesRead != 0) + { + bytesRead = await args.SocketClient.ReadStream.ReadAsync(buf, 0, 1); + buf.Dump(); + } + + "Client disconnected :(".Dump(); + + await listener.StopListeningAsync(); + }; + + await listener.StartListeningAsync(tcpPort); +} + +// Define other methods and classes here \ No newline at end of file diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Udp/Basics.linq b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Udp/Basics.linq new file mode 100644 index 0000000..d63ee11 --- /dev/null +++ b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/linqpad-samples/Udp/Basics.linq @@ -0,0 +1,67 @@ + + rda.SocketsForPCL + Sockets.Plugin + Sockets.Plugin.Abstractions + System.Threading.Tasks + + +// demonstrates sending and receiving udp datagrams + +const int udpPort = 30000; +const string eof = ""; + +async Task Main() +{ + await DoReceiver(); + await DoClient(); +} + +public Task DoReceiver() +{ + var receiver = new UdpSocketReceiver(); + + receiver.MessageReceived += async (sender, args) => + { + var msg = Encoding.UTF8.GetString(args.ByteData); + + if (msg != eof) + Console.Write(msg + " "); + else + await receiver.StopListeningAsync(); + }; + + return receiver.StartListeningAsync(udpPort); +} + +public async Task DoClient() +{ + var client = new UdpSocketClient(); + + // you can send messages without 'connecting' + // udp is connectionless and stateless, so calling connect + // just specifies a default destination + foreach (var msg in "no guarantee these will even be delivered!".Split(' ')) + { + var bs = Encoding.UTF8.GetBytes(msg); + await client.SendToAsync(bs, "localhost", udpPort); + await Task.Delay(250); + } + + await Task.Delay(1000); + + // if we connect, any calls to SendAsync will send data to the + // specified remote address + await client.ConnectAsync("localhost", udpPort); + + foreach (var msg in "look ma, no target!".Split(' ')) + { + var bs = Encoding.UTF8.GetBytes(msg); + await client.SendAsync(bs); + await Task.Delay(500); + } + + var eofBytes = Encoding.UTF8.GetBytes(eof); + await client.SendAsync(eofBytes); +} + +// Define other methods and classes here diff --git a/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/rda.SocketsForPCL.1.2.2.nupkg b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/rda.SocketsForPCL.1.2.2.nupkg new file mode 100644 index 0000000..f231253 Binary files /dev/null and b/LiveXAMLApp/packages/rda.SocketsForPCL.1.2.2/rda.SocketsForPCL.1.2.2.nupkg differ diff --git a/LiveXAMLApp/packages/repositories.config b/LiveXAMLApp/packages/repositories.config new file mode 100644 index 0000000..0a111fa --- /dev/null +++ b/LiveXAMLApp/packages/repositories.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.classpath b/LiveXAMLServer/.classpath similarity index 53% rename from .classpath rename to LiveXAMLServer/.classpath index 3db10e3..502ef67 100644 --- a/.classpath +++ b/LiveXAMLServer/.classpath @@ -2,7 +2,7 @@ - - + + diff --git a/.project b/LiveXAMLServer/.project similarity index 100% rename from .project rename to LiveXAMLServer/.project diff --git a/.settings/org.eclipse.jdt.core.prefs b/LiveXAMLServer/.settings/org.eclipse.jdt.core.prefs similarity index 100% rename from .settings/org.eclipse.jdt.core.prefs rename to LiveXAMLServer/.settings/org.eclipse.jdt.core.prefs diff --git a/LiveXAMLServer/bin/Main.class b/LiveXAMLServer/bin/Main.class new file mode 100644 index 0000000..85d813c Binary files /dev/null and b/LiveXAMLServer/bin/Main.class differ diff --git a/LiveXAMLServer/build.gradle b/LiveXAMLServer/build.gradle new file mode 100644 index 0000000..5ff1469 --- /dev/null +++ b/LiveXAMLServer/build.gradle @@ -0,0 +1,7 @@ +apply plugin: 'java' +sourceSets { + main.java.srcDirs = ['src'] + main.resources.srcDirs = ['src'] + test.java.srcDirs = ['tests/java'] + test.resources.srcDirs = ['tests/resources'] +} diff --git a/LiveXAMLServer/gradle/wrapper/gradle-wrapper.jar b/LiveXAMLServer/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..8c0fb64 Binary files /dev/null and b/LiveXAMLServer/gradle/wrapper/gradle-wrapper.jar differ diff --git a/LiveXAMLServer/gradle/wrapper/gradle-wrapper.properties b/LiveXAMLServer/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..1e61d1f --- /dev/null +++ b/LiveXAMLServer/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Wed Apr 10 15:27:10 PDT 2013 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip diff --git a/LiveXAMLServer/gradlew b/LiveXAMLServer/gradlew new file mode 100755 index 0000000..91a7e26 --- /dev/null +++ b/LiveXAMLServer/gradlew @@ -0,0 +1,164 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# For Cygwin, ensure paths are in UNIX format before anything is touched. +if $cygwin ; then + [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` +fi + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/LiveXAMLServer/gradlew.bat b/LiveXAMLServer/gradlew.bat new file mode 100644 index 0000000..aec9973 --- /dev/null +++ b/LiveXAMLServer/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/libs/commons-io-2.4.jar b/LiveXAMLServer/libs/commons-io-2.4.jar similarity index 100% rename from libs/commons-io-2.4.jar rename to LiveXAMLServer/libs/commons-io-2.4.jar diff --git a/libs/java_websocket.jar b/LiveXAMLServer/libs/java_websocket.jar similarity index 100% rename from libs/java_websocket.jar rename to LiveXAMLServer/libs/java_websocket.jar diff --git a/src/Main.java b/LiveXAMLServer/src/Main.java similarity index 94% rename from src/Main.java rename to LiveXAMLServer/src/Main.java index c885053..d070c19 100644 --- a/src/Main.java +++ b/LiveXAMLServer/src/Main.java @@ -38,6 +38,7 @@ public class Main extends WebSocketServer{ private static Main sv; private static Path filepath; + private static int port = 9934; private Main( int port ) throws UnknownHostException { super( new InetSocketAddress( port ) ); @@ -59,6 +60,14 @@ public static void main(String[] args) throws IOException, InterruptedException System.out.println("\""+args[0].toString()+"\" is not a xaml file."); return; } + if (args.length>1){ + try{ + port=Integer.parseInt(args[1].toString()); + } catch (Exception ex){ + System.out.println("\""+args[1].toString()+"\" is not a valid port."); + return; + } + } filepath = Paths.get(args[0].toString(),new String[]{}); File f = new File(filepath.toAbsolutePath().toString()); if(!f.exists() || f.isDirectory()) { @@ -69,12 +78,14 @@ public static void main(String[] args) throws IOException, InterruptedException CreateWebsocketServer(); //watch for file changes WatchFileChanges(); + } else { + System.out.println("Usage: java -jar LiveXaml.jar /path/to/MyPage.xaml [port]"); } } private static void CreateWebsocketServer() throws UnknownHostException { WebSocketImpl.DEBUG = false; - int port = 8887; // 843 flash policy port + // 843 flash policy port sv = new Main( port ); sv.start(); System.out.println( "LiveXAML server started on port: " + sv.getPort() ); diff --git a/test.xaml b/LiveXAMLServer/test.xaml similarity index 100% rename from test.xaml rename to LiveXAMLServer/test.xaml diff --git a/bin/Main.class b/bin/Main.class deleted file mode 100644 index 7827d25..0000000 Binary files a/bin/Main.class and /dev/null differ