﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ApplicationContext" FullName="System.Windows.Forms.ApplicationContext"><TypeSignature Language="C#" Value="public class ApplicationContext : IDisposable" /><AssemblyInfo><AssemblyName>System.Windows.Forms</AssemblyName><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.IDisposable</InterfaceName></Interface></Interfaces><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>You can use the <see cref="T:System.Windows.Forms.ApplicationContext" /> class to redefine the circumstances that cause a message loop to exit. By default, the <see cref="T:System.Windows.Forms.ApplicationContext" /> listens to the <see cref="E:System.Windows.Forms.Form.Closed" /> event on the application's main <see cref="T:System.Windows.Forms.Form" />, then exits the thread's message loop.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Specifies the contextual information about an application thread.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ApplicationContext ();" /><MemberType>Constructor</MemberType><Parameters /><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Windows.Forms.ApplicationContext" /> class with no context.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ApplicationContext (System.Windows.Forms.Form mainForm);" /><MemberType>Constructor</MemberType><Parameters><Parameter Name="mainForm" Type="System.Windows.Forms.Form" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>If <see cref="M:System.Windows.Forms.ApplicationContext.OnMainFormClosed(System.Object,System.EventArgs)" /> is not overridden, the message loop of the thread terminates when <see cref="P:System.Windows.Forms.ApplicationContext.MainForm" /> is closed.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.Windows.Forms.ApplicationContext" /> class with the specified <see cref="T:System.Windows.Forms.Form" />.</para></summary><param name="mainForm"><attribution license="cc4" from="Microsoft" modified="false" />The main <see cref="T:System.Windows.Forms.Form" /> of the application to use for context. </param></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Dispose"><MemberSignature Language="C#" Value="public void Dispose ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Call <see cref="M:System.Windows.Forms.ApplicationContext.Dispose" /> when you are finished using the <see cref="T:System.Windows.Forms.ApplicationContext" />. The <see cref="M:System.Windows.Forms.ApplicationContext.Dispose" /> method leaves the <see cref="T:System.Windows.Forms.ApplicationContext" /> in an unusable state. After calling <see cref="M:System.Windows.Forms.ApplicationContext.Dispose" />, you must release all references to the <see cref="T:System.Windows.Forms.ApplicationContext" /> so the garbage collector can reclaim the memory that the <see cref="T:System.Windows.Forms.ApplicationContext" /> was occupying. For more information, see <format type="text/html"><a href="a17b0066-71c2-4ba4-9822-8e19332fc213">Cleaning Up Unmanaged Resources</a></format> and <format type="text/html"><a href="eb4e1af0-3b48-4fbc-ad4e-fc2f64138bf9">Implementing a Dispose Method</a></format>. </para><block subset="none" type="note"><para>Always call <see cref="M:System.Windows.Forms.ApplicationContext.Dispose" /> before you release your last reference to the <see cref="T:System.Windows.Forms.ApplicationContext" />. Otherwise, the resources it is using will not be freed until the garbage collector calls the <see cref="T:System.Windows.Forms.ApplicationContext" /> object's Finalize method.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Releases all resources used by the <see cref="T:System.Windows.Forms.ApplicationContext" />.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Dispose"><MemberSignature Language="C#" Value="protected virtual void Dispose (bool disposing);" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="disposing" Type="System.Boolean" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method is called by the public Dispose() method and the <see cref="M:System.Object.Finalize" /> method. Dispose() invokes the protected <see cref="M:System.Windows.Forms.ApplicationContext.Dispose(System.Boolean)" /> method with the <paramref name="disposing" /> parameter set to true. <see cref="M:System.Object.Finalize" /> invokes Dispose with <paramref name="disposing" /> set to false.</para><para>When the <paramref name="disposing" /> parameter is true, this method releases all resources held by any managed objects that this <see cref="T:System.Windows.Forms.ApplicationContext" /> references. This method invokes the Dispose() method of each referenced object.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Releases the unmanaged resources used by the <see cref="T:System.Windows.Forms.ApplicationContext" /> and optionally releases the managed resources.</para></summary><param name="disposing"><attribution license="cc4" from="Microsoft" modified="false" />true to release both managed and unmanaged resources; false to release only unmanaged resources. </param></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="ExitThread"><MemberSignature Language="C#" Value="public void ExitThread ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method calls <see cref="M:System.Windows.Forms.ApplicationContext.ExitThreadCore" />.</para><block subset="none" type="note"><para><see cref="M:System.Windows.Forms.ApplicationContext.ExitThread" /> and <see cref="M:System.Windows.Forms.ApplicationContext.ExitThreadCore" /> do not actually cause the thread to terminate. These methods raise the <see cref="E:System.Windows.Forms.Application.ThreadExit" /> event to which the <see cref="T:System.Windows.Forms.Application" /> object listens. The <see cref="T:System.Windows.Forms.Application" /> object then terminates the thread.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Terminates the message loop of the thread.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="ExitThreadCore"><MemberSignature Language="C#" Value="protected virtual void ExitThreadCore ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method is called from <see cref="M:System.Windows.Forms.ApplicationContext.ExitThread" />.</para><block subset="none" type="note"><para><see cref="M:System.Windows.Forms.ApplicationContext.ExitThread" /> and <see cref="M:System.Windows.Forms.ApplicationContext.ExitThreadCore" /> do not actually cause the thread to terminate. These methods raise the <see cref="E:System.Windows.Forms.Application.ThreadExit" /> event to which the <see cref="T:System.Windows.Forms.Application" /> object listens. The <see cref="T:System.Windows.Forms.Application" /> object then terminates the thread.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Terminates the message loop of the thread.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Finalize"><MemberSignature Language="C#" Value="~ApplicationContext ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method overrides <see cref="M:System.Object.Finalize" /> and cleans up resources by calling Dispose(false). Override Dispose(Boolean) to customize the cleanup.</para><para>Application code should not call this method; an object's Finalize method is automatically invoked during garbage collection, unless finalization by the garbage collector has been disabled by a call to the <see cref="M:System.GC.SuppressFinalize(System.Object)" /> method.</para><para>For more information, see <format type="text/html"><a href="FD376774-1643-499B-869E-9546A3AEEA70">[&lt;topic://cpconFinalizeMethodscDestructors&gt;]</a></format>, <format type="text/html"><a href="A17B0066-71C2-4BA4-9822-8E19332FC213">[&lt;topic://cpconCleaningUpUnmanagedResources&gt;]</a></format>, and <format type="text/html"><a href="8026CB68-FE93-43FC-96C1-C09AD7D64CD3">[&lt;topic://cpconOverridingFinalizeMethod&gt;]</a></format>.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Attempts to free resources and perform other cleanup operations before the application context is reclaimed by garbage collection.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="MainForm"><MemberSignature Language="C#" Value="public System.Windows.Forms.Form MainForm { set; get; }" /><MemberType>Property</MemberType><ReturnValue><ReturnType>System.Windows.Forms.Form</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This property determines the main <see cref="T:System.Windows.Forms.Form" /> for this context. This property can change at any time. If <see cref="M:System.Windows.Forms.ApplicationContext.OnMainFormClosed(System.Object,System.EventArgs)" /> is not overridden, the message loop of the thread terminates when the <paramref name="mainForm" /> parameter closes.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets or sets the <see cref="T:System.Windows.Forms.Form" /> to use as context.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="OnMainFormClosed"><MemberSignature Language="C#" Value="protected virtual void OnMainFormClosed (object sender, EventArgs e);" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="sender" Type="System.Object" /><Parameter Name="e" Type="System.EventArgs" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The default implementation of this method calls <see cref="M:System.Windows.Forms.ApplicationContext.ExitThreadCore" />.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Calls <see cref="M:System.Windows.Forms.ApplicationContext.ExitThreadCore" />, which raises the <see cref="E:System.Windows.Forms.ApplicationContext.ThreadExit" /> event.</para></summary><param name="sender"><attribution license="cc4" from="Microsoft" modified="false" />The object that raised the event. </param><param name="e"><attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.EventArgs" /> that contains the event data. </param></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member><Member MemberName="Tag"><MemberSignature Language="C#" Value="public object Tag { set; get; }" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.ComponentModel.TypeConverter(typeof(System.ComponentModel.StringConverter))</AttributeName></Attribute><Attribute><AttributeName>System.ComponentModel.Localizable(false)</AttributeName></Attribute><Attribute><AttributeName>System.ComponentModel.DefaultValue(null)</AttributeName></Attribute><Attribute><AttributeName>System.ComponentModel.Bindable(true)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.Object</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Any type derived from the <see cref="T:System.Object" /> class can be assigned to this property. If the <see cref="P:System.Windows.Forms.ApplicationContext.Tag" /> property is set through the Windows Forms designer, only text can be assigned.</para><para>A common use for the <see cref="P:System.Windows.Forms.ApplicationContext.Tag" /> property is to store data that is closely associated with the control. For example, if you have a control that displays information about a customer, you might store a <see cref="T:System.Data.DataSet" /> that contains the customer's order history in that control's <see cref="P:System.Windows.Forms.ApplicationContext.Tag" /> property so the data can be accessed quickly.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets or sets an object that contains data about the control.</para></summary></Docs></Member><Member MemberName="ThreadExit"><MemberSignature Language="C#" Value="public event EventHandler ThreadExit;" /><MemberType>Event</MemberType><ReturnValue><ReturnType>System.EventHandler</ReturnType></ReturnValue><Docs><remarks>To be added.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Occurs when the message loop of the thread should be terminated, by calling <see cref="M:System.Windows.Forms.ApplicationContext.ExitThread" />.</para></summary></Docs><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion></AssemblyInfo></Member></Members></Type>